我需要将/ data / files目录中的一堆文件移动到新的文件夹结构中。在/ data目录中,我有一个清单文件,其中包含每个文件的完整工作路径。
源文件:
/data/files/this_file_1.sh
/data/files/this_file_2.sh
清单文件包含:
/path/to/where/file/goes/this_file_1.sh
/a/different/path/to/file/this_file_2.sh
我需要帮助编写一个shell脚本,该脚本将在清单中找到文件名并运行一个复制命令。如果目录结构不存在,请创建它。
#!/bin/bash
for file_name in $(cat manifest); do
name=$(basename $file_name);
path= ??
# Mkdir / Copy
done
答案 0 :(得分:0)
我将让你编写完整的脚本,但这里有一些你可以使用的命令:
“在清单中找到文件名” - basename filepath
“验证它是否存在于/ data / files中” - if [ -e filename ]; then ......
“运行复制命令” - cp location1 location2
“如果目录结构不存在,请创建它” - else mkdir /data/files
或您要创建的目录。
如果您对这些命令有任何疑问,请发表评论: - )