linux下怎么把一个文件复制到多个文件夹里?

2024-11-05 09:19:54
推荐回答(3个)
回答1:

cp命令将文件复制到目录文件夹。

  1. 如果需要复制一个文件到多个文件夹下,可以使用多条cp语句,或者使用shell脚本。

  2. 它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。

  3. cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。

  4. 用法示例:

    复制hello.txt到ab cd ef目录下$ cp hello.txt ab$ cp hello.txt cd$ cp hello.txt ef脚本方式:复制abc.txt到ab cd ef目录下dirs=("ab" "cd" "ef")for dir in ${dirs[@]}docp abc.txt $(dir)donecp命令说明cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。

回答2:

find ./ -maxdepth 1 -type d -exec cp -r 文件名 {} \;

把文件名换成你要复制的文件就行。
./ 是说把文件复制到当前目录下,你要复制到其他目录就自己换。
-maxdepth 1 是说仅找一层子目录,二级三级。。的子目录不搜索。

cp 命令仅仅把最后一个参数作为目标,其余参数作为要复制的文件。所以楼上说的其实是将所有的文件都复制到 /home/c 下,不符合你的要求的。

回答3:

#/bin/bash
FILE=$1
DIR=$2
ls -l $DIR | awk '{ if ( $1~/^d/) print $9 }' | while read line
do
cp $FILE $DIR/$line
done
保存成脚本cp ,加执行权限: chmod +x cp
执行: ./cp file dir

哪里不明白再发消息吧~!
好运!