我在一个目录中有 mp3 文件。在本例中,我们假设它们是这 3 个:
Enter Sandman.mp3 ...And Justice For All.mp3 St. Anger.mp3
我如何列出(ls 是高度首选) 所有 mp3?
如你所见,有一首歌曲有开头的句点,这被认为是一个隐藏文件。
ls 中的参数-a
允许我查看隐藏文件,但是没有帮助
ls -a *.mp3
输出:
Enter Sandman.mp3 St. Anger.mp3
并且ls -a .*.mp3
仅输出:
...And Justice for All.mp3
请告诉我您的想法,我应该如何列出所有带或不带前导句点的 mp3 文件。
答案1
你可以设置 bash shell 的dotglob
参数
shopt -s dotglob
然后 shell glob*.mp3
将包含以句点开头的文件
$ ls *.mp3
...And Justice For All.mp3 Enter Sandman.mp3 St. Anger.mp3
要恢复默认行为,请使用shopt -u dotglob
。或者,使用扩展通配符
ls @(.|)*.mp3
将匹配以句点开头或不以句点开头的 mp3 文件。Ubuntu 下的交互式 shell 中默认启用扩展通配符,但如果没有,您可以使用 来实现shopt -s extglob
。