linux 中把一个文件夹下的文件复制到同目录下不同的文件夹下?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux 中把一个文件夹下的文件复制到同目录下不同的文件夹下?相关的知识,希望对你有一定的参考价值。

把test文件夹中的2个文件一次性复制到同目录下的其他文件夹内


#!/bin/bash


read -p '请输入要复制的路径(此路径下的所有文件会被复制):' from 

read -p '请输入要复制到的路径(源路径下的所有文件都会在此路径下所有子文件夹中被复制一份):' target

dirs=`ls $target -F | grep "/$"` # 找同级文件夹

# dirs=`find $target -type d -path $from -prune -o -path $target -prune -o -print`

# dirs=`find $target -type d` # 找所有子文件夹

for dir in $dirs

do

if [ "`realpath $target/$dir`" != "`realpath $from`" ] && [ "`realpath $target/$dir`" != "`realpath $target`" ];

then

cp -r $from/* $target/$dir

#cp -r $from/* $dir/

fi

done

参考技术A 因为你的俩文件都是add开始的,那么就可用同配符号,
因为不只是不是有其他文件也符合,所以可以用ls来看一下,
ls -l add*.*
如果只显示了俩,那么就可以复制了
cp add*.* 目的文件夹
参考技术B 打开你要复制到的目录
cp /test/* . 复制一个目录下的所有文件到当前工作目录追问

要把test里面的2个文件test1.TXT test2.TXT文件复制到下面的所有带有【小区】的20个文件夹中。

cp -r /temp/test/* /temp/  目标目录能用通配符进行匹配不?

追答

cp /temp/test/* /temp/[小区]*
你试试能不能执行?
删除用过通配符已经我用的是数字就是文件夹都是数字的,中文这个没用过,cp也没有试过

追问

不行,只能复制到一个文件夹,另一个没有复制

追答

cp /temp/test/* /temp/*[gNB] 这样试试

linux复制指定目录下的全部文件到另一个目录中

如果dir2目录不存在,则可以直接使用
cp -r dir1 dir2
即可。
如果dir2目录已存在,则需要使用
cp -r dir1/. dir2

 

以上是关于linux 中把一个文件夹下的文件复制到同目录下不同的文件夹下?的主要内容,如果未能解决你的问题,请参考以下文章

linux怎样将一个目录下的文件复制到另一个目录下

linux复制指定目录下的全部文件到另一个目录

linux如何怎样将一个目录下的文件复制到另一个目录下?

linux复制指定目录下的全部文件到另一个目录中

Linux系统怎么复制文件夹下的全部文件到另外文件夹

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