2
pax 명령에 디렉토리 이름을 삽입하려고하는 스크립트를 작성 중이며 올바른 구문을 얻는 방법을 모르겠습니다. 이것은 내가 뭘 하려는지,하지만 정규식 문자열의 일부로 $ DIRNAME 치료 것으로 보인다.스크립트 변수를 정규식 문자열에 삽입하려면 어떻게해야합니까?
DIRNAME=$(tar -tvf $1 | head -1 | sed -e 's:^.* \([^/]*\)/.*$:\1:')
pax -r -f $1 -s'/$DIRNAME\/upload\///'
고마워요!
작동하지 않습니다
출력을 생성합니다. 문제는 $ DIRNAME이 DIRNAME의 내용을 표시하지 않고 텍스트 문자열 $ DIRNAME 자체를 정규식 문자열에 삽입한다는 것입니다. – user77413
스크립트가 실행되는 셸은 무엇입니까? 세게 때리다? tcsh? –
죄송합니다. 다시 시도해 보았습니다. 오류가 발생하면 pax 명령을 사용했지만 $ DIRNAME은 이중 인용 부호를 사용하지 않았습니다. 나는 bash를 사용하고있다. – user77413