すべて .gz ファイルにある 1 年分のログ ファイルがあります。これらすべてを一度に現在のディレクトリに抽出するために使用できるコマンドはありますか? *.gz を解凍しようとしましたが、うまくいきません。他の提案はありますか?
質問する
1880 次
1 に答える
0
シェルスクリプト?
#!/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;
于 2012-08-24T17:20:53.087 に答える