40个最常用的Linux命令行
在撰写本文时,Linux在桌面上的全球市场份额为2.68%,但超过90%的云基础设施和托管服务都运行在这个操作系统上。仅仅因为这个原因,熟悉流行的Linux命令是非常必要的。
根据2020年StackOverflow的调查,Linux是专业开发者使用最多的操作系统,市场份额高达55.9%。这不仅仅是巧合。Linux是免费开源的,安全性优于竞争对手,并且有强大的命令行,让开发者和高级用户效率更高。
无论您是经验丰富的系统管理员还是Linux新手,您都可以利用本指南。
什么是Linux命令?
最常用的Linux命令
Linux命令备忘单
什么是Linux命令?
Linux是一个在命令行上运行的程序或实用程序。命令行是一个接受文本行并将其处理成计算机指令的界面。
任何图形用户界面(GUI)都只是命令行程序的抽象。例如,当您通过单击“X”关闭窗口时,操作后会运行一个命令。
标志是我们向您运行的命令传递选项的一种方式。大多数Linux命令都有一个帮助页面,我们可以用-h标志调用它。在大多数情况下,徽标是可选的。
实参或参数是我们对命令的输入,以便它可以正常运行。在大多数情况下,该参数是一个文件路径,但它可以是您在终端中键入的任何内容。
可以使用连字符(-)和双连字符(-)来调用标志,参数的执行取决于它们传递给函数的顺序。
最常用的Linux命令
在开始使用最常用的Linux命令之前,请确保启动终端。在大多数Linux发行版中,您可以使用Ctrl+Alt+T来做到这一点。如果这不起作用,请在应用程序面板中搜索“终端”。
Linux终端模拟器。
现在,让我们了解40个最常用的Linux命令。这些选项中的许多都可以绑定到它们,所以一定要查看命令手册。
1.ls命令
Ls可能是每个Linux用户在终端上输入的第一个命令。它允许您列出所需目录(默认为当前目录)的内容,包括文件和其他嵌套目录。
ls
它有很多选择,所以最好使用- help来获得一些帮助。此标志返回所有可以与ls一起使用的标志参数。
例如,要为ls命令的输出着色,可以使用以下命令:
ls –color=auto
Ls着色命令
现在ls命令输出是彩色的,您可以体会到目录和文件之间的区别。
然而,用彩色标志输入是低效的:这就是为什么我们使用命令lsalias。
2 .别名命令
alias命令允许您在shell会话中定义临时别名。创建别名时,您可以指示shell用一系列命令替换单词。
例如,要将ls设置为color,而不是每次都键入flag – color,您可以使用:
alias ls=”ls –color=auto”
如您所见,alias命令需要一个键值对参数:alias NAME=”VALUE “。请注意,该值必须用引号括起来。
如果要列出shell会话中的所有别名,就不能使用argument来运行alias命令。
alias
别名命令。
3.unalias命令
顾名思义,unalias命令旨在从已定义的别名中删除别名。要删除以前的ls别名,可以使用:
unalias ls
4.pwd命令
pwd命令代表“打印工作目录”,它输出你的目录的绝对路径。例如,如果您的用户名是“john ”,并且您在文档目录中,那么它的绝对路径将是/home/john/Documents。
要使用它,只需在终端中键入pwd:
pwd# My result: /home/wbolt/Documents/linux-commands
5.cd命令
命令cd和ls很受欢迎。它指的是“更改目录”,顾名思义,它会把你切换到你试图访问的目录。
例如,如果您位于Documents目录中,并试图访问其名为Videos的子文件夹,您可以通过键入以下命令进入该目录:
cd Videos
您还可以提供文件夹的绝对路径:
cd /home/wbolt/Documents/Videos
使用cd命令时,有一些提示可以节省您很多时间:
1.输入个人文件夹
cd
2.向上移动一级
cd ..
3.返回到上一个目录
cd –
6.cp命令
在Linux终端上直接复制文件和文件夹是非常容易的,有时它可以取代传统的文件管理器。
要使用cp命令,只需键入源文件和目标文件:
cp file_to_copy.txt new_file.txt
您还可以使用递归标志来复制整个目录:
cp -r dir_to_copy/ new_copy_dir/
记住,在Linux中,文件夹以正斜杠(/)结尾。
7.rm命令
既然你知道如何复制文件,那么知道如何删除它们将会很有帮助。
您可以使用rm命令删除文件和目录。但是使用的时候要小心,因为用这种方法恢复被删除的文件是非常困难的(但不是不可能的)。
要删除常规文件,请键入:
rm file_to_copy.txt
如果想删除空目录,可以使用递归(-r)标志:
rm -r dir_to_remove/
另一方面,要删除包含内容的目录,您需要使用force(-f)和递归标志:
rm -rf dir_with_content_to_remove/
警告:误用这两个标志,你可能会抹掉一整天的工作!
8.mv命令
您可以使用mv命令移动(或重命名)文件系统中的文件和目录。
要使用此命令,请在源文件和目标文件中键入其名称:
mv source_file destination_folder/mv command_list.txt commands/
要使用绝对路径,请使用:
mv /home/wbolt/BestMoviesOfAllTime ./
…在哪里。/是您当前所在的目录。
您还可以使用mv重命名文件,同时将它们保存在同一个目录中:
mv old_file.txt new_named_file.txt
9.mkdir命令
要在shell中创建文件夹,可以使用mkdir命令。只要指定新文件夹的名称,确定不存在,然后就可以开始了。
例如,要创建保存所有图像的目录,只需键入:
mkdir images/
要使用简单的命令创建子目录,请使用parent(-p)标志:
mkdir -p movies/2004/
10 .人工指挥
另一个重要的Linux命令是man。它显示任何其他命令的手册页(只要有一个)。
要查看mkdir命令的手册页,请键入:
man mkdir
您甚至可以查看man命令手册页:
man man
Man命令手册页。
11 .触摸命令
touch命令允许您更新指定文件的访问和修改时间。
例如,我有一个旧文件,最后一次修改是在4月12日:
旧约会。
要将其修改日期更改为当前时间,我们需要使用-m标志:
touch -m old_file
现在日期和今天的日期重合(写这篇文章开始的日期是8月8日)。
新日期
然而,在大多数情况下,您将创建一个新的空文件,而不是使用触摸来修改文件日期:
touch new_file_name
12.chmod命令
chmod命令允许您快速更改文件的模式(权限)。它有许多选项可用。
文件的基本权限包括:
r(只读)
w(写)
x(执行)
chmod最常见的一个用例是让用户可以执行文件。为此,请键入chmod和flag +x,然后键入要修改其权限的文件:
chmod +x script
您可以使用它来使脚本可执行,从而允许您使用。/符号。
13.。/命令
也许。/symbol本身不是命令,但在这个列表中值得一提。它允许shell直接从终端运行可执行文件,并在系统中安装任何解释程序。不再双击图形文件管理器中的文件!
例如,使用此命令,您可以运行仅在中提供的Python脚本或程序。运行格式,如XAMPP。运行可执行文件时,确保它具有executable (X)权限,可以使用chmod命令修改该权限。
下面是一个简单的Python脚本以及如何使用?/符号:
#! /usr/bin/python3# filename: scriptfor i in range(20):print(f”This is a cool script {i}”)
下面是我们如何将脚本转换成可执行文件并运行它:
chmod +x script./script
14.退出命令
exit命令完全按照其名称执行:使用它,您可以结束shell会话,并且在大多数情况下,您可以自动关闭正在使用的终端:
exit
15.sudo命令
该命令代表“超级用户do”,允许您在运行特定命令时充当超级用户或根用户。这就是Linux如何保护自己免受用户意外修改机器文件系统或安装不适当软件包的影响。
Sudo通常用于在用户的主目录之外安装软件或编辑文件:
sudo apt install gimpsudo cd /root/
在运行您键入的命令之前,它会要求您输入管理员密码。
16.关闭命令
正如您可能猜到的,shutdown命令允许您关闭机器的电源。但是,它也可以用来停止和重新启动它。
要立即关闭计算机(默认为一分钟),请键入:
shutdown now
您还可以计划以24小时制关闭系统:
shutdown 20:40
要取消之前的关闭调用,可以使用-c标志:
shutdown -c
17.htop命令
Htop是一个交互式进程查看器,允许您直接从终端管理计算机的资源。在大多数情况下,默认情况下不会安装它,所以请确保在下载页面上阅读更多关于它的信息。
htop
“htop”交互界面。
18.解压缩命令
unzip命令允许您提取。终端中的zip文件。同样,默认情况下可能不会安装这个包,所以请确保使用包管理器安装它。
在命令行下面,这意味着包含图像的. zip文件正在被解压缩:
unzip images.zip
19.apt,yum,pacman命令
无论您使用哪个Linux发行版,您都可以使用软件包管理器来安装、更新和删除您每天使用的软件。
您可以通过命令行访问这些软件包管理器,并根据您的计算机运行的发行版使用其中一个软件包管理器。
下面的示例将安装GIMP,这是一个大多数软件包管理器中普遍提供的免费开源软件:
1.基于debian(Ubuntu,Linux Mint)
sudo apt install gimp
2.基于红帽(Fedora,CentOS)
sudo yum install gimp
3.基于arch(Manjaro,Arco Linux)
sudo pacman -S gimp
20.回声命令
echo命令在终端中显示定义的文本——就这么简单:
echo “Cool message”
回声命令
它的主要目的是在这些消息中打印环境变量:
echo “Hey $USER”# Hey wbolt
21.cat命令
Cat是“concatenate”的缩写,用于直接从终端创建、查看和连接文件。它主要用于在不打开图形文本编辑器的情况下预览文件:
cat long_text_file.txt
卡特彼勒命令。
22.ps命令
使用ps,您可以查看当前shell会话的运行进程。它打印关于运行程序的有用信息,如进程ID、TTY(电传打印机)、时间和命令名。
ps
Ps命令。
如果想要更多的互动内容,可以使用htop。
23.kill命令
当一个程序没有反应,而你又无法用任何方法关闭它时,这是很烦人的。幸运的是,kill命令解决了这类问题。
简单地说,kill向终止它的进程发送一个TERM或kill信号。
您可以通过输入PID(进程ID)或程序的二进制名称来终止进程:
kill 533494kill firefox
使用此命令时要小心——使用kill时,您可能会意外删除正在执行的工作。
24.ping命令
Ping是最流行的测试网络连接的网络终端工具。ping有许多选项,但在大多数情况下,您将使用它来请求域或IP地址:
ping google.comping 8.8.8.8
25.vim命令
Vim是一个免费的开源终端文本编辑器,从20世纪90年代开始使用。它允许你用有效的键绑定来编辑纯文本文件。
有人觉得很难用——退出VIM是最常见的StackOverflow问题之一,但是一旦你习惯了,它就成了命令行中最好的盟友。
要启动Vim,只需输入:
vim
Vim文本编辑器。
26.历史命令
如果你试图记住一个命令,历史将派上用场。此命令显示您过去使用过的命令的枚举列表:
history
历史命令。
27.passwd命令
Passwd允许您更改用户帐户的密码。首先,它会提示您输入当前密码,然后要求您输入新密码并确认。
它类似于您在其他地方看到的任何其他密码更改,但在本例中,它直接发生在您的终端中:
passwd
Passwd命令
使用的时候一定要小心——一不小心就可能搞混用户密码!
28.哪个命令
哪个命令输出shell命令的完整路径。如果它不能识别给定的命令,它将抛出一个错误。
例如,我们可以用它来检查Python和Brave web浏览器的二进制路径:
which python# /usr/bin/pythonwhich brave# /usr/bin/brave
29.粉碎命令
如果您希望文件几乎不可恢复,shred可以帮助您完成这项任务。该命令将重复覆盖文件的内容,因此给定的文件极难恢复。
以下是一个内容不多的文件:
粉碎文件。
现在,让我们通过键入shred命令来完成这项工作:
shred file_to_shred.txt
覆盖内容。
如果您想立即删除该文件,可以使用-u标志:
shred -u file_to_shred.txt
30.更少的命令
Less(相对于more)是一个允许您在以下时间之前和之后检查文件的程序:
less large_text_file.txt
指挥越少。
less的优点是它的界面中包含了更多的和vim命令。如果你需要比cat更具互动性的东西,less是个不错的选择。
31.尾部命令
与cat类似,tail在打印文件内容时有一个主要警告:它只输出最后几行。默认情况下,它打印最后10行,但是您可以用-n修改这个数字。
例如,要打印大型文本文件的最后几行,可以使用:
tail long.txt
尾部命令。
要仅查看最后四行,请执行以下操作:
tail -n 4 long.txt
Tail命令最后四行。
32.头部命令
这是对tail命令的补充。输出头文本文件的前10行,但是您可以使用-n标志来设置要显示的任意行数:
head long.txthead -n 5 long.txt
总指挥部。
33.grep命令
Grep是处理文本文件的最强大的工具之一。它搜索与正则表达式匹配的行并打印出来:
grep “linux” long.txt
Grep命令。
您可以使用-c标志来计算给定条件匹配的次数:
grep -c “linux” long.txt# 2
34.whoami命令
此命令(我是谁的缩写)显示当前使用的who am I用户名:
whoami# wbolt
使用echo和环境变量$USER可以得到相同的结果:
echo $USER# wbolt
35.什么是命令
Whatis打印任何其他命令的单行描述,使其成为有用的参考:
whatis python# python (1) – an interpreted, interactive, object-oriented programming languagewhatis whatis# whatis (1) – display one-line manual page descriptions
36.wc命令
Wc代表“字数”。顾名思义,它返回文本文件中的字数:
wc long.txt # 37 207 1000 long.txt
让我们来分析这个命令的输出:
37行
207字
1000字节大小
文件名(long.txt)
如果您只需要字数,请使用-w标志:
wc -w long.txt207 long.txt
37.uname命令
uname(Unix名称的缩写)打印操作系统信息,当您知道当前的Linux版本时,这很方便。
在大多数情况下,您将使用-a(–all)标志,因为默认输出没有那么有用:
uname # Linux uname -a # Linux wboltmanjaro 5.4.138-1-MANJARO #1 SMP PREEMPT Thu Aug 5 12:15:21 UTC 2021 x86_64 GNU/Linux
38.neofetch命令
Neofetch是一个CLI(命令行界面)工具,在Linux发行版的ASCII徽标旁边显示系统的信息,如内核版本、外壳和硬件:
neofetch
Neofetch命令
在大多数计算机中,默认情况下此命令不可用,因此请确保首先使用软件包管理器安装它。
39 .查找命令
find命令根据正则表达式在目录层次结构中搜索文件。要使用它,请遵循以下语法:
find [flags] [path] -name [expression]
要在当前目录中搜索名为long.txt的文件,请输入以下命令行:
find ./ -name “long.txt” # ./long.txt
搜索以结尾的文件。py (Python)扩展,可以使用下面的命令行:
find ./ -type f -name “*.py” ./get_keys.py ./github_automation.py ./binarysearch.py
40.wget命令
Wget(万维网获取)是一个从互联网上检索内容的实用工具。它有一面最大的旗帜。
以下是从GitHub获取Python文件的方法:
wget https://raw.githubusercontent.com/DaniDiazTech/Object-Oriented-Programming-in-Python/main/object_oriented_programming/cookies.py
Linux命令备忘单
每当你想要一个快速参考,只需查看下表:
.hl-code code{background-color: #eee; border-color: #ccc; font-size: 1em;}命令用法ls列出目录的内容alias定义或显示别名unalias删除别名定义pwd打印工作目录cd更改目录cp复制文件和目录rm删除文件和目录mv移动(重命名)文件和目录mkdir创建目录man显示其他命令的手册页面touch创建空文件chmod更改文件权限./运行可执行文件exit退出当前shell会话sudo以超级用户身份执行命令shutdown关闭您的机器htop显示进程和资源信息unzip解压zip文件apt,yum,pacman包管理器echo显示文本行cat打印文件内容ps报告shell进程状态kill终止程序ping测试网络连接vim高效文本编辑history显示以前的命令列表passwd更改用户密码which返回程序的完整二进制路径shred覆盖文件以隐藏其内容less以交互式检查文件tail显示文件的最后几行head显示文件的第一行grep打印与给定条件匹配行whoami输出用户名whatis显示单行说明wc字数文件uname显示操作系统信息neofetch显示操作系统和硬件信息find搜索遵循模式的文件wget从互联网检索文件
总结
学习Linux可能需要一些时间,但是一旦你掌握了它的一些工具,它就成了你最好的盟友,你不会后悔选择它作为你的日常驱动。
Linux的一个显著之处是,即使你是一个有经验的用户,你也永远不会停止学习使用它来提高工作效率。
还有更有用的Linux命令。如果我们错过了什么,请在下面的评论中分享你最喜欢的Linux命令!