移动匹配glob in的文件for ... done循环返回'no such file or directory'

问题描述 投票:0回答:1

我正根据他们的扩展名移动文件。

当存在与glob匹配的文件时,以下工作正常;但是当没有匹配的文件时它会返回

'mv:重命名/Users/xxx/Downloads/*.txt到/Volumes/Internal_HD/*.txt:没有这样的目录文件'

in_path=/Users/xxx/Downloads
out_path=/Volumes/Internal_HD

for f in "$in_path"/*.txt; do
    mv -v "$f" "$out_path"
done;

['xxx'是用户名。]

bash glob mv
1个回答
1
投票

设置nullglob选项,否则如果没有文件匹配,模式将扩展为自身:

shopt -s nullglob
© www.soinside.com 2019 - 2024. All rights reserved.