변수로 설정하면 명령이 자동으로 실행되나요?

변수로 설정하면 명령이 자동으로 실행되나요?

저는 Linux와 쉘/bash 스크립팅에 관한 모든 것에 익숙해지고 있습니다.

전체 디렉터리를 압축하는 백업 스크립트를 구성 중입니다. 압축 명령이 할당될 변수를 인쇄해야 하는지, 아니면 그냥 변수에 설정하여 실행해야 하는지 궁금합니다.

나는 이것을 가지고있다:

x1=$(tar cfz "/dir_destination" "/dir_to_compress/")
echo "$x1"

"에코" 줄을 안전하게 제거할 수 있는지 궁금합니다.

답변1

문법 $()이라고 합니다명령 대체쉘은 먼저 대괄호 안의 명령을 실행한 다음 stdout(후행 줄 바꿈이 제거됨)을 할당하여 이를 처리합니다 x1.

즉, 명령이 실행되기 전에도 실행됩니다 echo "$x1".

관련 정보