.gz 파일에 모두 몇 년 동안의 로그 파일이 있습니다. 이 모든 것을 한 번에 현재 디렉토리에 추출하는 데 사용할 수있는 명령이 있습니까? * .gz 압축을 풀려고했지만 작동하지 않습니다. 다른 제안?명령 줄에서 여러 .gz 로그 파일을 추출하는 방법
0
A
답변
0
셸 sciprt?
#!/bin/ksh
TEMPFILE=tempksh_$$.tmp #create a file name
> $TEMPFILE #create a file w/ name
ls -l | grep '.*\.gz$' \ #make dynamic shell script
| awk '{printf "unzip %s;\n", $9;}' \ #with unzip cmd for each item
>> $TEMPFILE #and write to TEMPFILE
chmod 755 $TEMPFILE #give run permissions
./$TEMPFILE #and run it
rm -f $TEMPFILE #clean up
안된
하지만 난 당신이 아이디어를 얻을 생각 ....
사실조금 손보는 및 훨씬 간단 도착 ...
set -A ARR *.gz;
for i in ${characters[@]}; do `unzip $i`; done;
unset ARR;
정확한 오류 메시지 나 포함하도록 질문을 수정하시기 바랍니다 "그러나 작동하지 않는다"는 다른 정확한 증거. 대부분의/리눅스에서'unzip'이 아니라'gunzip'을 사용해야합니다. 'gunzip * .gz'가 작동합니다. 행운을 빕니다. – shellter