我是bash中编码的新手。
我正在尝试创建可以循环通过所有子目录的东西,并且在每个级别的内部都应将文件复制到该目录。
所以,例如,如果我有以下目录
/dir1/
/dir2/
/dir3/
...
...
/dirX/
和文件fileToCopy.txt
然后,我想运行一些可以打开每个/dirX
文件并将fileToCopy.txt
放入该目录中的东西。离开我:
/dir1/fileToCopy.txt
/dir2/fileToCopy.txt
/dir3/fileToCopy.txt
...
...
/dirX/fileToCopy.txt
我想在循环中进行此操作,因为然后我将尝试修改此循环以添加更多步骤,因为最终.txt文件实际上是.Java文件,我想将其复制到每个目录,将其编译(其中还有其他类),然后运行以收集输出。
谢谢。
for i in dir1, dir2, dir3, .., dirN
do
cp /home/user1068470/fileToCopy.txt $i
done
另外,您可以使用以下代码。
for i in *
do # Line breaks are important
if [ -d $i ] # Spaces are important
then
cp fileToCopy.txt $i
fi
done
在当前目录(。)下找到所有目录,并将文件复制到其中:
find . -type d -exec cp fileToCopy.txt '{}' ;