我只想将if:
pass
else:
pass
个文件从try except
复制到20180721
文件夹中。我还想从文件名中删除第一个数字,并想将从-1重命名为-3 。我想尽量减少命令,因此我在下面使用Outgoing
命令。
文件名:
Incoming
预期输出:
pax
我尝试了此命令,除了删除文件名前面的数字外,它还完成了大部分工作。有人可以帮忙吗?
使用的命令:
216118105741_MOM-09330-20180721_102408-1.jar
答案 0 :(得分:0)
您可以尝试
一般
for i in `ls files-to-copy-*`; do
cp $i `echo $i | sed "s/rename-from/rename-to/g"`;
done;
以您的情况
for i in `ls *_MOM*`; do
cp $i `echo $i | sed "s/_MOM/MOM/g" | sed "s/-1/-3/g"`;
done;
答案 1 :(得分:0)
仅使用parameter expansion试试这个简单的脚本:
for file in *20180721*.jar; do
new=${file#*_}
cp -- "$file" "/path/to/destination/${new%-*}-3.jar"
done