이전 명령의 출력을 가져 와서 새 명령에 삽입하는 bash 스크립트에서 실행해야하는 명령이 있습니다.bash 스크립트에서 변수를 인용하는 방법
mycommand -p "$VARIABLE"
캐치 항상 즉, 내가 필요로하는 $ 및/특수 문자를 포함 할 $ 변수입니다 : VARIABLE=$(cat "file.txt" | grep "text")
그런 다음 다른 명령에서 그 변수를 사용 : 그래서 예를 들면
그래서 나는 특수 문자가 문자 그대로 취해 지도록 작은 따옴표를 사용해야한다.
나는 작동하지 않은 \""$VARIABLE"\"
을 시도했습니다.
내가 성취하고자하는 것은 내 검색어가 포함 된 텍스트 파일에서 한 줄을 가져와 고유해야하며 한 줄만 입력하면됩니다.
그런 다음 해당 줄을 입력해야합니다 (그 중 절반은 줄을 자르고 나머지 절반은 다른 명령으로 사용). 이후에 변수를 반향하여 확인한 텍스트를 성공적으로 가져올 수 있습니다. 문제는 변수에 $와 \가 포함되어있어 특수 문자로 해석된다는 것입니다. 예를 들어
: 하나없이
my command -p $345$randomtext\.moretext
에서 오류가 발생합니다 그것을 해석하는 변수를 인용.
휴대 전화를 사용해 보았습니다. 제대로 포맷되지 않았습니다. – jcalton88
'printf "% s \ n"내 명령 -p "$ VARIABLE"이 특수 문자가 해석되고 있음을 보여 줍니까? – muru
질문의 전제가 잘못되었습니다. 만약'VARIABLE'이'$ 345 $ randomtext \ .moretext'로 설정되어 있다면,'my command -p "$ VARIABLE"은 ('my command -p '$ 345 $ randomtext \ .moretext' * 내 명령 -p $ 345 $ randomtext \ .moretext '에 * 없습니다. 문제는 '내 명령'의 정의 안에 있어야합니다. – ruakh