Linux命令提供了很多灵活性。这篇文章详细介绍了一些方法,通过利用一些聪明的技巧来使它们更方便。
使用文件名完成
您可以通过输入文件名的开头并按tab键来避免输入完整的文件名。如果字符串唯一地标识了一个文件,那么这样做将使文件名完整。否则,您可以在名称中输入另一个字母,然后再次按tab键。但是,您也可以通过输入字符串,然后按两次tab键来获得以特定字符串开头的所有文件的列表。在这个例子中,我们两者都做:
$ ls didiff-commands dig。1目录挖。磁盘使用命令$ CD dir $ PWD目录
重用命令并更改它们
Reissuing最近使用的命令很容易bash。要重新运行以前的命令,所有您必须进行类型!在命令行上。您还可以使用更改重新发出命令。如果您在下面显示的第一个命令仅查找SSHD.没有运行,您可以发出第二个命令以启动它。它只是用“start”替换“状态”。
sudo systemctl状态sshd!!:s / status / start /
重用命令参数
您还可以仅重用为上一个命令提供的参数,而无需使用字符串重新键入它们*如该示例所示:
$ mkdir dir1 dir2 dir3 $ chmod 770*Chmod 770 dir1 dir2 dir3 .执行以下命令
请注意,使用“!*”键入命令后,将全面显示该命令。
请记住,“所有争论”真的是指“所有参数”。如果在键入上面显示的命令后,则要列出刚刚使用的目录*诡计,你会遇到一个小问题。
$ ls -ld!*
ls -ld 770 dir1 dir2 dir3 ls: cannot access '770':没有这样的文件或目录<====哎呀!DRWXRWX ---。2 SHS SHS 4096 2018年6月6日DIR1 DRWXRWX ---。2 SHS SHS 4096 2018年6月6日DIR2 DRWXRWX ---。2 SHS SHS 4096 5月11日09:20 DIR3
只关注最近输入的命令
这历史命令可以轻松查看以前输入的命令,但通常会显示历史缓冲区中的1.000(即,所有)的命令。如果你想看到只要最近输入的命令,最简单且最快的方法是提供要查看的命令数量作为参数。历史命令。此列表显示输入最近的五个命令。
$历史5 1162 11/05/21 13:10:54购物者|WC -L 1163 11/05/21 13:19:42 sudo systemctl状态1164 11/05/21 13:20:01 sudo systemctl状态sshd 1165 11/05/21 13:23:37男士历史1166 11/05 /21 13:23:50历史5
您还可以使用“历史记录-5”等命令,但刚刚显示的命令更容易,不需要向其发送1000行输出尾巴命令。
搜索特定命令的历史记录并重新运行它们
要回顾最近使用的命令(最近的第一个),以重新运行一些特定的命令,键入r ^(按住Control键并按“R”)。然后键入命令的一部分。继续按下r ^直到您在要重用的命令上登机,然后按返回键。
$ shopt | wc -l $ shopt | wc -l 53
所示的输出告诉我们shopt命令有53个设置。
使文件备份超级容易
备份文件的一个非常方便的方法是使用这样的命令,该命令将“.backup”添加到备份文件:
$ cp myfile {,。备份}
相同的技术适用于m相反,命令希望重命名该文件。
$ mv myfile {,。备份}
如果你想备份一系列文件,你可以使用这样的脚本节省一些时间和麻烦:
#!/bin/bash文件在$* do cp $file{,。备份}ls -l $file。备份完成
以下脚本将采用您提供参数的文件列表并将每个文件复制到其* .backup表单。如果您愿意,您可以将“备份”或其他一些单词更改为“旧”或其他单词。
$ backup thisfile thatfile tholefile -rw-r - r--。1 SHS SHS 1234 5月11日13:37 ThisFile.Backup -RW-R - R--。1 SHS SHS 2012年5月11日13:37 Affile.Backup -RW-R - R--。1 shs shs 876 5月11日13:37其他文件。返回
根据您备份的文件的名称,您也可以使用通配符。例如:
$备份项目* -rwxrwxr-x。1 shs shs 16800 Jan 5 18:10 project.log -rwxrwxr-x. log1 shs shs 16840 Jan 5 18:44项目。计划-rw-rw-r——1 shs shs 324 Jan 5 17:51 project.staff
包起来
自从将近40年前我第一次使用Linux命令行以来,我就爱上了它。最好的部分是什么?总有更多的东西要学习,还有更多的方法让它更好地使用!