Cat의 변수 이스케이프

Cat의 변수 이스케이프

bash 프롬프트를 통해 ssh를 통해 쉘 스크립트를 작성하려고 합니다. 그러나 쉘은 파일에 직접 쓰는 대신 내가 쓰고 싶은 변수를 해석해야 한다고 주장합니다. 예를 들어, cat <<EOF >checkup.sh\n'$command'EOF단순히 파일로 작성됩니다 ''. 대신 어떻게 글을 쓸 수 있나요 $command? 나는 내가 생각할 수 있는 모든 실용적인 탈출 방법을 시도했습니다.

변경 사항이 있으면 PHP를 사용하여 수행합니다.phpseclib.

답변1

첫 번째 를 인용해 보세요 EOF. 예:

cat <<'EOF'
>checkup.sh\n'$command'
EOF

이에 대해서는 bash(1) 매뉴얼 페이지의 Here Documents 섹션에 설명되어 있습니다.

관련 정보