如何能够流畅地删除终端中的文件?

例如,我这样做

cd Music dir 

得到

 123456789.mp3 qweerkrtrkgljdjfkdjfdkf.mp3 a.mp3 b.mp3 blabla.mp3 

我怎么用最少的努力删除文件qweerkrtrkgljdjfkdjfdkf.mp3blabla.mp3

UPD :关键的想法是文件名可能很长,所以我实际上不想输入它们。

试试这个:

 rm -f 2.mp3 blabla.mp3 

rm删除文件, -f强制它(这样它就不会停止,询问你是否要删除文件)。 如果这不在您的主目录中,请添加sudo 。 这是另一种可能需要较少打字的方式(虽然读起来有点难)

 rm -f {2,blabla}.mp3 

这扩展到2.mp3 blabla.mp3 。 如果要使用较大的文件名,可以使用通配符( * ),它将返回以您选择的文件名开头/结尾的所有项目。 例如:

 rm -f bla* 

将删除以bla开头的所有文件。 如果您使用此:

 rm -f *.mp3 

它将删除所有以.mp3结尾的文件。 如果您使用此:

 rm -f bla*.mp3 

它将删除所有以bla开头并以.mp3结尾的文件。 *角色的可能性几乎是无穷无尽的:P

就像每个人都说的那样, rm -f 是要走的路,但是,正如stonedsquirrel所说,你可以输入前几个字母然后点击 ,它会自动填充文件名。

试试这个: rm qweer*.mp3 bla*.mp3

警告:如果存在以这些字母开头的文件名,则此命令将检测到该名称。

正如@Hckr已经提到的那样,名字之间没有相似之处。 您可以使用通配符,例如rm *.mp3将删除名称以.mp3结尾的所有文件。 如果没有这种相似之处,则需要单独指定每个文件。

实际上,您可以使用制表符完成来保存一些输入。 在您的示例中,如果键入rm q并按制表符键,则将完成rm qweerkrtrkgljdjfkdjfdkf.mp3 。 这是有效的,因为它是唯一以q开头的文件。 如果您输入rm b这将不足以完成,因为您有两个以b开头的文件。

简单, rm 2.mp3 blabla.mp3

注意:这将导致永久删除!


对于文件:

1234.MP3 1345.MP3 1234.MP4

rm -f 1*3*.MP3会删除前2个,不会确认,永久!

*甚至是空白的,这就是它仍然删除第二个的原因。

我要做的是在运行这些命令之前将你不想删除的文件放在文件夹中,如果它们少于你想要删除的话。 但最终,通配符(“*”和“?”)和定义语句的组合可以轻松完成工作。 只是取决于你想要保留或删除的文件。

有没有尝试拖动文件删除到终端应用程序窗口? 它可以为您克隆目录以及文件名路径样式。 但是,如果您只删除2或3个文件,我希望它只是用于学习目的,否则我会手动使用键盘上的“TAB”键入路径和文件名,它应该自动完成文件名中的以您已键入的内容开头的当前目录。

标签完成方法 。 默认情况下,它在Ubuntu中启用了bash 。 它的工作原理如下:

 $ rm bl 

将自动更改为

 $ rm blabla.mp3 

如果文件名不明确,则需要再次按Tab键以查看可能的文件名列表:

 $ rm b blabla.mp3 b.mp3 

这也适用于许多其他命令,例如apt-getservice等。

如果您对更复杂的选项卡完成感兴趣,请使用Grml配置查看zsh ,这是令人兴奋的。