当前位置: 首页 > 科技观察

成为Linux终端高手的七大武器

时间:2023-03-20 11:03:41 科技观察

Linux终端不仅仅是输入命令的地方。如果您能够熟悉这些基本技能,那么您将能够轻松使用大多数Linux发行版使用的默认Bashshell。1.Tab补全可以节省时间,对于输入不知道具体名称的文件和命令非常方便。比如当前目录下有一个名为“真长文件名”的文件,你想删除它。您可以输入完整的文件名,但必须确保正确输入空格和每个字母。如果当前目录中有很多以字母“r”开头的文件,(如果你没有输入正确的字符)bash将不知道你要删除哪个文件。如果当前目录中还有另一个名为“非常长的文件名”的文件,则按Tab键。Bash会自动将“really”部分添加到所有以“r”开头的文件。此时继续按Tab键,您将获得所有匹配文件名的列表。2.管道机制这种机制允许你将一个命令的输出传输到另一个命令。根据UNIX哲学,每个程序都足够小,只做一件事并且把它做好。例如ls命令列出当前目录下的所有文件,grep命令搜索其中输入的指定搜索项。可以通过管道机制(|字符)将两者结合起来,在当前目录下搜索文件。下面给出的命令(在当前文件夹中)搜索关键字为“word”的文件:ls|grepword3.通配符“*”(星号)字符是匹配任意长度字符的通配符。例如,如果要删除当前文件夹中名为“真长文件名”和“真超长文件名”的两个文件,可以运行以下命令:rmreally*name该命令将删除所有以“真长文件名”开头的文件”。以“名称”结尾的文件。但是,如果运行rm*命令,则会删除文件夹中的所有文件。(译注:使用通配符时要小心,尤其是当你的rm没有-f确认时!)4.输出重定向“>”字符可以将一个命令的输出重定向到一个文件或另一个命令。例如,下面这行命令在执行ls后会列出当前文件夹下的所有文件。结果不在终端显示,而是输出到当前文件夹下一个名为“file1”的文件:ls>file15.HistoryBash可以记住你之前输入过的命令,上下方向键可以逐行调出线。使用history命令打印历史,使用流水线机制grep选择性输出你想要的结果。~...“~”,也称为波浪号,用于表示当前用户的主目录。您可以键入cd~来代替cd/home/name进入您的主目录,以达到相同的效果。这也可以用于相对路径:例如cd~/Desktop可以到达当前用户的桌面目录。相似地,”。”代表当前目录,“..”代表当前目录的父目录。使用cd..返回到上一个目录。它们也可以用在相对路径上,例如:你当前在Desktop文件夹下,通过cd../Documents命令,你可以进入与Desktop同父文件夹的Documents文件夹。(注解:“-”代表上一级目录,cd-可返回上一级工作目录。)6.后台命令Bash默认会执行你在当前终端输入的每条命令。通常这很好,但是如果您想在启动应用程序后继续使用终端怎么办?输入firefox启动火狐浏览器,你的终端会被错误信息等各种信息输出占用,直到你关闭火狐浏览器。在Bash中,您可以通过在命令末尾添加“&”运算符来在后台执行程序。火狐&7。条件执行Bash也可以连续执行两条命令。只有在第一个命令成功执行后,第二个命令才会开始执行。为此,您可以通过键入“&&”在同一行中输入两个命令,这是两个“&”字符来分隔它们。下面给出的命令将在等待5秒后运行gnome-screenshot工具:sleep5&&gnome-screenshot