【发布时间】:2021-02-01 21:04:25
【问题描述】:
我有一个目录$dir,其中包含.txt.xy 文件和带有.txt.xy 文件的子目录。我尝试遍历每个文件并将整个路径以及没有$dir 的路径作为参数传递给这样的程序:
dir="/path/to/"
suffix=".xy"
find "$dir" -name "*.txt.xy" -print0 | xargs -0 -I {} sh -c 'program "$1" |
subprogram filename="$2"' _ {} "$(echo {} | sed -e "s#^${dir}##" -e "s#${suffix}\$##")"
-
$1应该是完整路径(例如/path/to/subdir/file.txt.xy) -
$2应该是没有$dir和$suffix的完整路径(例如subdir/file.txt)
$1 是正确的完整路径,但 $2 也是完整路径,就好像 $(...) 中的管道永远不会执行一样。我在这里错过了什么?
【问题讨论】: