在目录中存在4个虚拟文件。
使用其他一些进程我在同一目录中获取一些文件。
例如:
在这个目录下面的文件来了 -
acc_bal_1_20022017_1.txt
acc_dir_1_20022017_1.txt
。 #[* 20022017-当前日期ddmmyyyy]
由于缺少 acc_liq_1_20022017_1.txt 和 acc_trans_1_20022017.txt 文件, 但我们需要根据要求提供所有4个文件。
因此,请考虑虚拟文件 acc_liq.1.txt , acc_trans.1.txt 并将其重命名为
acc_liq_1_20022017_1.txt
acc_trans_1_20022017_1.txt
我需要在putty中编写unix脚本以适应上述情况。
我从下面的脚本开始
for mypattern in ls -1 DIR | cut -d'_' -f3-4 | uniq | awk -F'/' '{print $NF}'
但是我没有任何想法继续进行,因为我是unix的初学者。 请提供正确的解决方案。
答案 0 :(得分:0)
我觉得某处可能还有其他一些问题,但以下内容应该让你开始:
d=$(date +"_1_%d%m%Y_")
for f in *.1.txt
do
nf=${f/./$d}
[[ -f "$nf" ]] || mv "$f" "$nf"
done
这最初假设您位于虚拟文件的目录中,而所有其他正确的文件都不会以' .1.txt'
结尾