我有文件
foo.mp3
酒吧巴兹.mp3
酒吧巴兹2.mp3
什么命令会输出以下内容?
富
巴兹
酒吧\ 巴兹\ 2
我知道ls -1b
如何处理逃逸,但是.mp3
最后我该如何切断它呢?
答案1
ls -1 | cut -d "." -f 1
截断第一个句点及其后的所有内容。它将句点视为分隔符,并仅显示第一个字段中出现分隔符之前的文本。如果您的文件名最多只有一个扩展名(总共零个或一个句点),则此方法可能有效(就这么简单)。
ls -1b | cut -d "." -f 1
在 Linux 中用“\ ”替换空格。不过请注意,这个问题也有 Unix 标签。而且,“ls”中的“-b”选项不一定得到所有 Unix 变体的支持。(它不像 -l(长)或 -1(单列)那样受到广泛支持)。
答案2
我得到了它的工作ls -1b | sed s/\.mp3//