有没有办法在 Linux 中按字母顺序解压到 stdout?我正在解压到一个 fifo 文件,但文件顺序乱了
答案1
程序unzip
将按照文件在存档中的出现顺序提取文件。如果文件数量不多,您可以构建要提取的文件列表,对其进行排序,然后unzip
循环运行以按所需顺序提取每个文件。
类似于(当然是脚本):
#!/bin/sh
FILE=$1
unzip -qq -l $1 | awk '{print $4; }' |sort |\
while :
do
read name
[ -z "$name" ] && break
unzip -p $1 "$name"
done
该-qq
选项unzip
可抑制标题,允许awk
仅打印文件名。