我需要将多个连续的文件复制到连续的目录中。这些文件的文件名中包含儒略日期(一年中的某一天)和其他信息。目录按儒略日期(一年中的某一天)列出。我需要每个文件都与儒略日期相对应。
澄清....
我在“/home/aaa”中拥有 365 个文件,标签为“test_001.txt”至“test_365.txt”。每个文件都需要移动到“/data”中其自己的目录中,标签为“001”至“365”。
希望这能解决您的问题。谢谢!
答案1
类似这样的事应该可以
for K in $(seq -w 1 365)
do
mv *_${K}.* "/data/$K" 2>/dev/null
done
答案2
for K in $(seq -f "test_%200g" 365); do cp *_${K}.* "/data/$K" 2>/dev/null; done
据我所知,在“seq”命令中,“%2”代表一个整数,每个“0”代表一个位置,即个位、十位。“g”结束表达式。我可能错了,但它有效!谢谢您的帮助!