如何能够流畅地删除终端中的文件?
例如,我这样做
cd Music dir
得到
123456789.mp3 qweerkrtrkgljdjfkdjfdkf.mp3 a.mp3 b.mp3 blabla.mp3
我怎么用最少的努力删除文件qweerkrtrkgljdjfkdjfdkf.mp3和blabla.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-get
, service
等。
如果您对更复杂的选项卡完成感兴趣,请使用Grml配置查看zsh
,这是令人兴奋的。