我有一些路径存储在变量(变量名称 - >测试)
中echo "${test}"
结果:
/abc/pqr/filepath1
/abc/pqr/lmn/file path2
/abc/pqr/rst/filepath3
我想逃离"空间"第二个路径中的字符并获取每个路径的所有者,我使用以下命令:
stat -c '%U' ${test} , works for 1st and 3rd path.
如何为第二条路径开展此工作?提前谢谢。
答案 0 :(得分:1)
使用while
构造获取每个文件名,每行一个:
while IFS= read -r f; do stat -c '%U' "$f"; done <<<"$test"
示例:强>
$ echo "$test"
/abc/pqr/filepath1
/abc/pqr/lmn/file path2
/abc/pqr/rst/filepath3
$ while IFS= read -r f; do echo "$f"; done <<<"$test"
/abc/pqr/filepath1
/abc/pqr/lmn/file path2
/abc/pqr/rst/filepath3