我的问题是:
我有一个名为-r的文件:-r.jpg
当我尝试做一个mv *.jpg old/时,我得到:
mv: invalid option -- 'r'即使是为了
for g in *.jpg;do echo $g &&mv "${g}" old/;done我也有同样的错误。
发布于 2022-04-13 10:46:02
最简单的解决方案是在文件名前面加上描述相对路径的./。
for g in *.jpg; do echo $g && mv "./${g}" old/; done使用绝对路径也是可能的。
for g in $(pwd)/*.jpg; do echo $g && mv $g old/; done或者,您可能希望使用find命令,因为它已经提供了相对路径(如果只想处理当前目录,可以使用--max-depth )。
for g in $(find . -name "*jpg"); do mv $g old; done在最坏的情况下,您有许多复杂的不可解析字符,您可以引用与find -inum组合的inode编号并相应地处理您的文件。
$ for g in $(ls -i1 ./*jpg | cut -f1 -d' '); do find . -inum $g -print0 | xargs -0 -I '{}' mv '{}' old; donehttps://serverfault.com/questions/1098500
复制相似问题