find "inputscan" -type f -exec sh -c 'file="$1"; folder=$(basename $(dirname "$file")); filename=$(basename "$file"); cp "$file" "$2/$folder"_"$filename"' sh {} "staging" \;
如果input_scan
中有五个文件,如:
/inputscan
/folder1
/1.txt
/folder2
/2.txt
/folder3
/3.txt
4.txt
移动到暂存后的文件名应如下所示:
inputscan_folder1_1.txt
inputscan_folder1_folder2_2.txt
inputscan_folder3_3.txt
inputscan_4.txt
目前,我正在使用上述命令获取folder1_1.txt,folder2_2.txt,folder3_3.txt,inputscan_4.txt
。
2条答案
按热度按时间ryoqjall1#
你要找的是这样的东西:
如果输出良好,删除
echo
。umuewwlo2#
尝试使用realpath。它显示了整个文件路径。从这些数据中,您可以轻松地剪切不必要的部分,并复制或移动文件。