我有一个任务,需要将一堆文件从一个目录移动到另一个目录。我需要同时移动所有相同文件名的文件(例如blah.pdf,blah.txt,blah.html等),并且每四分钟可以移动一组这样的文件。我之前有一个简短的bash脚本,在这些时间间隔内只能移动单个文件,但是新的名称要求让我感到困惑。
我的旧脚本如下:
我的旧脚本如下:
find ./ -maxdepth 1 -type f | while read line; do mv "$line" ~/target_dir/; echo "$line"; sleep 240; done
对于新脚本,我基本上只需要用不带扩展名的唯一文件名列表替换 find ./ -maxdepth 1 -type f
。然后我可以用do mv "$line*" ~/target_dir/;
替换do mv "$line" ~/target_dir/;
。
那么,说了这么多,有没有什么好的方法来使用bash脚本获取不带文件名的唯一文件列表?我考虑使用正则表达式来获取文件名,然后将它们放入哈希中以获得唯一性,但我希望有更简单/更好/更快的方法。有什么建议吗?