我正在编写一个bash脚本,可以完成以下任务:
-在测试目录中创建名为dir1,dir2和dir3的3个目录 -将以“ alpha”开头的所有文件复制到每个新创建的目录中,以使名称现在以目录名开头
例如,输出应为:dir1-alpha.txt
我知道cp不能一次从多个来源一次全部复制到多个目录,因此我正在努力提出一种实现此目的的策略。
有人可以用这些参数帮助我指出正确的方向吗?
答案 0 :(得分:0)
类似这样的东西:
#!/bin/bash
dir_names=('dir1' 'dir2' 'dir3')
path_to_files='/tmp/tmpfiles/'
for i in ${dir_names[@]}; do
echo "Creating $i and copying over files..."
mkdir $i
for f in $(ls $path_to_files); do
cp $path_to_files/$f $i/$i-$f
done
done