私がする時 unzip -l zipfilename
、 そうですか
1295627 08-22-11 07:10 A.pdf
473980 08-22-11 07:10 B.pdf
...
ファイル名だけを見たい。これを試してみる
unzip -l zipFilename | cut -f4 -d" "
しかし、区切り文字は" "
。
ファイルに名前にスペースがないと仮定します。
unzip -l filename.Zip | awk '{print $NF}'
私の解凍出力にはヘッダーとフッターの両方があるため、awkスクリプトは次のようになります。
unzip -l filename.Zip | awk '/-----/ {p = ++p % 2; next} p {print $NF}'
スペースを含むファイル名を処理するバージョン:
unzip -l filename.Zip | awk '
/----/ {p = ++p % 2; next}
$NF == "Name" {pos = index($0,"Name")}
p {print substr($0,pos)}
'
ファイル名withスペースに対応する必要がある場合は、次を試してください。
unzip -l zipfilename.Zip | awk -v f=4 ' /-----/ {p = ++p % 2; next} p { for (i=f; i<=NF;i++) printf("%s%s", $i,(i==NF) ? "\n" : OFS) }'
Awkを使用します。
unzip -l zipfilename | awk '{print $4}'