Bash脚本-创建目录,在更改名称的同时复制特定文件

时间:2019-03-04 22:19:06

标签: bash scripting directory

我正在编写一个bash脚本,可以完成以下任务:

-在测试目录中创建名为dir1,dir2和dir3的3个目录 -将以“ alpha”开头的所有文件复制到每个新创建的目录中,以使名称现在以目录名开头

例如,输出应为:dir1-alpha.txt

我知道cp不能一次从多个来源一次全部复制到多个目录,因此我正在努力提出一种实现此目的的策略。

有人可以用这些参数帮助我指出正确的方向吗?

1 个答案:

答案 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