如何移动除以“。”开头的文件之外的所有文件?

如何移动除以“。”开头的文件之外的所有文件?

我在 Mac 10.9.5 上使用 bash shell。在某个目录中,如何移动所有非隐藏文件(即所有不以“。”开头的文件)?

谢谢,-戴夫

答案1

正常情况下*会扩展到除以 开头的文件之外的所有文件.;但是,如果dotglob设置了该参数,隐藏文件也会被扩展,如这个答案。为确保在任何情况下都能排除隐藏文件,请使用:

mv [^.]* {TargetDir}/

这里[^.](或替代[!.])匹配除之外的任意单个字符.,并*匹配任意数量的任意字符(包括空字符串)。

相关内容