7
이의 상상하자 그 내 서버에, 나는 다음과 같은 파일이 있습니다배쉬 스크립트와 정규식 문제
[email protected]:/var/log/foo$ ls
fooFile1 fooFile2 logFile logFile.1 logFile.2
내가 모든 파일하지만 로그 파일을 포함하는 아카이브를 창조하고 싶었다. *.
[email protected]:~$ tar -czf foo.tar.gz /var/log/foo/!(logFile.*)
을 그리고 그것을 잘 작동합니다 : 그래서 명령을 함께했다! 그러나 동일한 작업을 수행하는 스크립트를 만들려고 할 때
#!/bin/bash
tar -czf foo.tar.gz /var/log/foo/!(logFile.*)
나는 다음과 같은 오류 건너 온을 :
./test.sh: line 3: syntax error near unexpected token '('
./test.sh: line 3: 'tar -czf foo.tar.gz /var/log/foo/!(logFile.*)'
관련 (I 대신 ls
를 사용하여 동일한 문제를 충족 타르되지 않는 문제 tar
)
이 오류의 출처를 알 수 없습니다. 아무도 내가 틀린 곳을 말할 수 있습니까?
은 오두막 아래 장소
을 가능하게 필요로 확장 글로브 패턴입니다. –
더 자세히 살펴 봐야합니다. 둘 다 감사합니다! –