2014-08-29 5 views
0

변수를 사용하는 sed와 함께 send 명령을 사용하려고합니다. 올바르게 탈출하는 데 어려움이 있습니다.변수를 사용하여 sed를 사용하여 보내기

sed "1i//$VAR" /file > /tmp/out 

하지만 난 내 탈출하는 방법을 알아낼 수 없습니다 : 나는 (파일의 첫 번째 줄은 $ VAR 텍스트를 추가하는) 따로 나오지 명령을 사용하면

send "sed "1i//$VAR" /file > /tmp/out\r" 

, 그것은 작동 send 명령. 큰 따옴표 내부

+1

이것은'expect'를위한 것입니까? –

답변

2

은 작은 따옴표는 특별한 의미를 잃고, 그래서 당신은 아마 필요

로컬 컴퓨터에
send "sed '1i//$VAR' /file > /tmp/out\r" 

$VAR 명령에 배치됩니다. 원격 시스템에서는 sed 명령을 작은 따옴표로 묶어 추가 악용을 방지합니다.

2

이 작동합니다 : 가장 바깥 쪽 따옴표 문제의

send "sed '1i//$VAR' /file > /tmp/out\r" 

만 유형을 변수가 보간 여부를 결정.

관련 문제