我想编写一个从.zip文件中提取文件并将其转换为文本文件的bash脚本 - 几乎在文件名末尾添加".txt"
,因为它们都是文本文件,但不是有一个扩展名。
我对shell很新。我发现了这个:
cd /path/to/files
for i in *.gz
do
gunzip $i
done
for i in *.zip
do
unzip $i
done
我想它会提取文件,但我如何重命名/转换它们呢?
答案 0 :(得分:2)
您可以使用extglob
查找没有.txt
扩展名的所有文件:
shopt -s extglob
for f in !(*.txt); do
mv "$f" "$f".txt
done
PS:您还可以使用!(*.txt)
模式匹配所有没有扩展名的文件。