你应该知道的 37 个重要的 Linux 命令

您是 Linux 新手还是有点生疏?以下是您需要了解的所有命令。将此视为 Linux 终端的基本参考。这也适用于 macOS 命令行。
终端的基本工具包
Linux 包含大量命令,但我们选择了其中最重要的 37 个来展示。学习这些命令,您将在 Linux 命令提示符下更加得心应手。
以下列表按字母顺序排列。命令在列表中的位置并不代表其有用性或简单性。有关命令用法的最后一句话,请参阅其手册页。 man
命令当然在我们的列表中——它是“manual”的缩写。
1.别名
别名命令允许您为命令或命令序列指定自己的名称。然后您可以键入您的简称,shell 将为您执行命令或命令序列。
alias cls=clear
这会设置一个名为 cls
的别名。这将是 clear
的另一个名称。当您键入 cls
时,它将清除屏幕,就像您键入 clear
一样。当然,您的别名可以节省一些击键次数。但是,如果您经常在 Windows 和 Linux 命令行之间切换,您会发现自己在 Linux 机器上键入 Windows cls
命令时并不知道您的意思。现在它会知道。
别名可能比那个简单的例子复杂得多。这是一个名为 pf
的别名(用于进程查找),它稍微复杂一点。请注意在命令序列两边使用引号。如果命令序列中有空格,则这是必需的。此别名使用 ps
命令列出正在运行的进程,然后通过 grep
命令将它们通过管道传输。 grep
命令在 ps
的输出中查找与命令行参数 $1
匹配的条目。
alias pf="ps -e | grep $1"
如果您想发现 shutter
进程的进程 ID (PID),或者想知道 shutter
是否正在运行,您可以使用这样的别名。输入 pf
、一个空格和您感兴趣的进程的名称:
pf shutter

在命令行上定义的别名将随着终端窗口消失。当你关闭它时,它们就消失了。要使您的别名始终可用,请将它们添加到主目录中的 .bash_aliases
文件中。
2. 猫
cat
命令(“concatenate”的缩写)将文件内容列出到终端窗口。这比在编辑器中打开文件要快,而且您不可能不小心更改文件。要读取您的 .bash_log_out
文件的内容,请键入以下命令,而主目录是您当前的工作目录,默认情况下为:
cat .bash_logout

如果文件的长度超过终端窗口中的行数,文本将快速掠过,您无法阅读。您可以将 cat
的输出通过 less
进行管道传输,使流程更易于管理。使用 less
,您可以使用向上和向下箭头键、PgUp 和 PgDn 键以及 Home 和 End 键向前和向后滚动文件。输入 q
退出 less。
cat .bashrc | less

3.光盘
cd
命令更改当前目录。换句话说,它将您移动到文件系统中的一个新位置。
如果要切换到当前目录中的目录,只需键入 cd
和其他目录的名称即可。
cd work
如果要更改到文件系统目录树中其他位置的目录,请提供带有前导/的目录路径。
cd /usr/local/bin
要快速返回到您的主目录,请使用 ~
(波浪号)字符作为目录名称。
cd ~

这是另一个技巧:您可以使用双点符号 ..
来表示当前目录的父目录。您可以键入以下命令以进入目录:
cd ..
假设您在一个目录中。父目录中有其他目录,以及您当前所在的目录。要更改为其他目录之一,您可以使用 ..
符号来缩短您必须键入的内容.
cd ../games

4.修改
chmod
命令设置文件或文件夹的文件权限标志。标志定义谁可以读取、写入或执行文件。当您使用 -l
(长格式)选项列出文件时,您会看到一串看起来像
-rwxrwxrwx
如果第一个字符是 -
,则该项目是一个文件,如果是 d
,则该项目是一个目录。字符串的其余部分是三组三个字符。从左边开始,前三个代表所有者的文件权限,中间三个代表组的文件权限,最右边的三个字符代表的权限>其他。在每个集合中,r
代表读取,w
代表写入,x
代表执行。
如果存在 r
、w
或 x
字符,则授予文件权限。如果该字母不存在,而是出现 -
,则不授予该文件权限。
使用 chmod
的一种方法是将您希望授予所有者、组和其他人的权限作为 3 位数字提供。最左边的数字代表所有者。中间的数字代表组。最右边的数字代表其他数字。您可以使用的数字及其代表的内容列于此处:
- 0:没有权限
- 1:执行权限
- 2:写权限
- 3:写入和执行权限
- 4:读取权限
- 5:读取和执行权限
- 6:读写权限
- 7:读取、写入和执行权限
查看我们的 example.txt 文件,我们可以看到所有三组字符都是 rwx
。这意味着每个人都对该文件具有读取、写入和执行权限。
为所有者设置读取、写入和执行(我们列表中的 7 个)权限;为组设置读取和写入(我们列表中的 6 个)权限; 和为 others 读取并执行(我们列表中的 5 个)我们需要使用带有 chmod
命令的数字 765:
chmod -R 765 example.txt

为 owner 设置读取、写入和执行(我们列表中的 7 个)权限,为 group 和为设置读取和写入(我们列表中的 6 个)权限others 我们需要通过 chmod
命令使用数字 766:
chmod 766 example.txt
5. chown
chown
命令允许您更改文件的所有者和组所有者。使用 ls -l
列出我们的 example.txt 文件,我们可以在文件描述中看到 dave dave
。其中第一个表示文件所有者的名称,在本例中是用户 dave
。第二个条目显示组所有者的名称也是 dave
。每个用户都有一个在创建用户时创建的默认组。该用户是该组的唯一成员。这表明该文件未与任何其他用户组共享。
您可以使用 chown
更改文件的所有者和/或组。您必须提供所有者和组的名称,以 :
字符分隔。您将需要使用 sudo
。要保留 dave 作为文件的所有者但将 mary 设置为组所有者,请使用以下命令:
sudo chown dave:mary example.txt

要将所有者和组所有者都更改为 mary,您可以使用以下命令;
sudo chown mary:mary example.txt
要更改文件以便 dave 再次成为文件所有者和组所有者,请使用以下命令:
sudo chown dave:dave example.txt
6.卷曲
curl
命令是一种从统一资源定位符 (URL) 或互联网地址检索信息和文件的工具。
curl
命令可能未作为 Linux 发行版的标准部分提供。如果您使用的是 Ubuntu 或其他基于 Debian 的发行版,请使用 apt-get
将此软件包安装到您的系统中。在其他 Linux 发行版上,请改用 Linux 发行版的包管理工具。
sudo apt-get install curl
假设您要从 GitHub 存储库中检索单个文件。没有官方支持的方法。您被迫克隆整个存储库。然而,使用 curl
,我们可以自行检索我们想要的文件。
此命令为我们检索文件。请注意,您需要使用 -o
(输出)选项指定要保存的文件的名称。如果不这样做,文件的内容会在终端窗口中快速滚动,但不会保存到您的计算机中。
curl https://raw.githubusercontent.com/torvalds/linux/master/kernel/events/core.c -o core.c

如果您不想看到下载进度信息,请使用 -s
(静默)选项。
curl -s https://raw.githubusercontent.com/torvalds/linux/master/kernel/events/core.c -o core.c

7.df
df
命令显示计算机已安装文件系统的大小、已用空间和可用空间。
两个最有用的选项是 -h
(人类可读)和 -x
(排除)选项。人类可读的选项以 Mb 或 Gb 而非字节显示大小。 exclude 选项允许您告诉 df
打折您不感兴趣的文件系统。例如,当您使用 squashfs
安装应用程序时创建的伪文件系统 <代码>捕捉命令。
df -h -x squashfs

8.差异
diff
命令比较两个文本文件并显示它们之间的差异。有许多选项可以根据您的要求定制显示。
-y
(并排)选项并排显示行差异。 -w
(宽度)选项允许您指定最大线宽以避免环绕线。在此示例中,这两个文件称为 alpha1.txt 和 alpha2.txt。 --suppress-common-lines
阻止 diff
列出匹配的行,让您专注于有差异的行。
diff -y -W 70 alpha1.txt alpha2.txt --suppress-common-lines

9.回声
echo
命令将文本字符串打印(回显)到终端窗口。
下面的命令将在终端窗口中打印“A string of text”字样。
echo A string of text
echo
命令可以显示环境变量的值,例如$USER
、$HOME
、PATH
环境变量。这些包含用户名、用户的主目录以及用户在命令行上键入内容时搜索匹配命令的路径的值。
echo $USER
echo $HOME
echo $PATH

以下命令将导致发出哔哔声。 -e
(转义码)选项将转义字符解释为“响铃”字符。
echo -e "\a"
echo
命令在 shell 脚本中也是无价的。脚本可以使用此命令生成可见输出,以指示脚本执行时的进度或结果。
10.退出
exit 命令将关闭终端窗口,结束 shell 脚本的执行,或者将您从 SSH 远程访问会话中注销。
exit

11. 寻找
如果您不记得放置的位置,请使用 find
命令来查找已知存在的文件。您必须告诉 find
从哪里开始搜索以及要查找什么。在此示例中,.
匹配当前文件夹,-name
选项告诉 find
查找名称与搜索模式匹配的文件.
您可以使用通配符,其中 *
代表任何字符序列,?
代表任何单个字符。我们使用 *ones*
来匹配任何包含序列“ones”的文件名。这将匹配 bones、stones 和 lonesome 等词。
find . -name *ones*

如我们所见,find
返回了一个匹配项列表。其中之一是名为 Ramones 的目录。我们可以告诉 find
只搜索文件。我们使用带有 f
参数的 -type
选项来执行此操作。 f
参数代表文件。
find . -type f -name *ones*
如果您希望搜索不区分大小写,请使用 -iname
(不区分名称)选项。
find . -iname *wild*
12.手指
finger
命令为您提供有关用户的简短信息转储,包括用户上次登录的时间、用户的主目录和用户帐户的全名。

13.免费
free
命令为您提供计算机内存使用情况的摘要。它对主随机存取存储器 (RAM) 和交换存储器都执行此操作。 -h
(人类)选项用于提供人类友好的数字和单位。如果没有此选项,数字将以字节为单位显示。
free -h

14. 查询
grep
实用程序搜索包含搜索模式的行。当我们查看 alias 命令时,我们使用 grep
搜索另一个程序 ps
的输出。 grep
命令也可以搜索文件的内容。在这里,我们在当前目录的所有文本文件中搜索单词“train”。
grep train *.txt
输出列出文件名并显示匹配的行。匹配的文本突出显示。

grep
的功能和实用性绝对值得您查看其手册页。
15. 团体
groups
命令告诉您用户是哪个组的成员。
groups dave
groups mary

16.压缩包
gzip
命令压缩文件。默认情况下,它会删除原始文件并为您留下压缩版本。要同时保留原始版本和压缩版本,请使用 -k
(保留)选项。
gzip -k core.c

17. 头
head
命令为您提供文件前 10 行的列表。如果您想查看更少或更多行,请使用 -n
(数字)选项。在此示例中,我们使用默认为 10 行的 head
。然后我们重复命令只要求五行。
head -core.c
head -n 5 core.c

18.历史
history 命令列出了您之前在命令行上发出的命令。您可以通过键入感叹号 !
和历史列表中的命令编号来重复历史记录中的任何命令。
!188

输入两个感叹号会重复您之前的命令。
!!
19.杀
kill
命令允许您从命令行终止进程。为此,您可以提供要kill
的进程的进程 ID (PID)。不要随便杀死进程。您需要有充分的理由这样做。在本例中,我们假设 shutter
程序已锁定。
要找到 shutter
的 PID,我们将使用关于 alias
命令的部分中的 ps
和 grep
技巧, 多于。我们可以搜索shutter
进程,获取其PID,如下:
ps -e | grep shutter.
一旦我们确定了 PID(在本例中为 1692),我们就可以按如下方式终止它:
kill 1692

20.少
less
命令允许您在不打开编辑器的情况下查看文件。它使用起来更快,而且您不会无意中修改文件。使用 less
,您可以使用向上和向下箭头键、PgUp 和 PgDn 键以及 Home 和 End 键向前和向后滚动文件。按 Q 键从 less
中退出
。
要查看文件,请将其名称提供给 less
,如下所示:
less core.c

您还可以将其他命令的输出通过管道传输到 less
中。要查看 ls
的输出以获取整个硬盘驱动器的列表,请使用以下命令:
ls -R / | less

使用/
在文件中向前搜索,使用?
向后搜索。
21. ls
这可能是大多数 Linux 用户遇到的第一个命令。它列出了您指定目录中的文件和文件夹。默认情况下,ls
在当前目录中查找。 ls
可以使用很多选项,我们强烈建议您查看其手册页。此处介绍了一些常见示例。
列出当前目录中的文件和文件夹:
ls
要使用详细列表列出当前目录中的文件和文件夹,请使用 -l
(长)选项:
ls -l
要使用人类友好的文件大小,请包括 -h
(人类)选项:
ls -lh
要包含隐藏文件,请使用 -a
(所有文件)选项:
ls -lha

22.男人
man 命令显示 less
中命令的“手册页”。手册页是该命令的用户手册。因为 man
使用 less
来显示手册页,所以您可以使用 less
的搜索功能。
例如,要查看 chown
的手册页,请使用以下命令:
man chown
使用向上和向下箭头或 PgUp 和 PgDn 键滚动浏览文档。按 q
退出手册页或按 h
寻求帮助。

23. 目录
mkdir
命令允许您在文件系统中创建新目录。您必须将新目录的名称提供给 mkdir
。如果新目录不在当前目录中,则必须提供新目录的路径。
要在当前目录中创建两个名为“invoices”和“quotes”的新目录,请使用以下两个命令:
mkdir invoices
mkdir quotes

要在“invoices”目录中创建一个名为“2019”的新目录,请使用以下命令:
mkdir invoices/2109
如果你要创建一个目录,但它的父目录不存在,你可以使用 -p
(parents) 选项让 mkdir
创建所有需要的父目录目录也是。在以下命令中,我们在“quotes”目录内的“yearly”目录中创建“2019”目录。 “yearly”目录不存在,但我们可以让 mkdir
一次创建所有指定的目录:
mkdir -p quotes/yearly/2019
还创建了“年度”目录。
24. MV
mv
命令允许您将文件和目录从一个目录移动到另一个目录。它还允许您重命名文件。
要移动文件,您必须告诉 mv
文件的位置以及您希望将其移动到的位置。在此示例中,我们将一个名为 apache.pdf
的文件从“~/Document/Ukulele”目录移动到当前目录,由单个 表示。
性格。
mv ~/Documents/Ukulele/Apache.pdf .
要重命名文件,您可以将其“移动”到具有新名称的新文件中。
mv Apache.pdf The_Shadows_Apache.pdf
文件移动和重命名操作可以一步完成:
mv ~/Documents/Ukulele/Apache.pdf ./The_Shadows_Apache.pdf
25.密码
passwd
命令允许您更改用户的密码。只需键入 passwd
即可更改您自己的密码。
您也可以更改另一个用户帐户的密码,但必须使用 sudo
。系统将要求您输入新密码两次。
sudo passwd mary

26.平
ping
命令可让您验证您是否与其他网络设备建立了网络连接。它通常用于帮助解决网络问题。要使用 ping
,请提供其他设备的 IP 地址或机器名称。
ping 192.168.4.18
ping
命令将一直运行,直到您使用 Ctrl+C 将其停止。

这是这里发生的事情:
- IP 地址为 192.168.4.18 的设备正在响应我们的 ping 请求并发回 64 字节的数据包。
- 互联网控制消息协议 (ICMP) 序列编号使我们能够检查是否有遗漏的响应(丢弃的数据包)。
- TTL 数字是数据包的“生存时间”。每次数据包通过路由器时,它(应该)减一。如果它达到零,则数据包将被丢弃。这样做的目的是防止网络环回问题淹没网络。
- 时间值是从您的计算机到设备再返回的往返时间。简单地说,这次越低越好。
要要求 ping
运行特定次数的 ping 尝试,请使用 -c
(计数)选项。
ping -c 5 192.168.4.18
要听到 ping,请使用 -a
(可听)选项。
ping -a 192.168.4.18
27.附言
ps
命令列出正在运行的进程。使用不带任何选项的 ps
会导致它列出在当前 shell 中运行的进程。
ps

要查看与特定用户相关的所有进程,请使用 -u
(用户)选项。这可能是一个很长的列表,因此为了方便起见,将其通过 less
进行管道传输。
ps -u dave | less

要查看正在运行的每个进程,请使用 -e
(每个进程)选项:
ps -e | less
28.密码
pwd
命令简洁明了,从根/目录打印工作目录(当前目录)。
pwd

29.关机
shutdown 命令可以让你关闭或重启你的 Linux 系统。
使用不带参数的 shutdown
将在一分钟内关闭您的计算机。
关闭

要立即关闭,请使用 now
参数。
shutdown now

您还可以安排关机并通知所有登录用户即将关机。要让 shutdown
命令知道您希望它何时关闭,您需要为其提供一个时间。这可以是从现在开始的一组分钟数,例如 +90
或一个精确的时间,例如 23:00
。您提供的任何短信都会广播给登录用户。
shutdown 23:00 Shutdown tonight at 23:00, save your work and log out before then!

要取消关机,请使用 -c
(取消)选项。在这里,我们已安排从现在起关闭 15 分钟,然后改变了主意。
shutdown +15 Shutting down in 15 minutes!
shutdown -c

30.SSH
使用 ssh 命令连接到远程 Linux 计算机并登录您的帐户。要建立连接,您必须提供您的用户名和远程计算机的 IP 地址或域名。在此示例中,用户 mary 正在登录 192.168.4.23 的计算机。建立连接后,系统会要求她输入密码。
ssh mary@192.168.4.23

她的用户名和密码已通过验证并被接受,她已登录。请注意,她的提示已从“Nostromo”更改为“howtogeek”。
Mary 发出 w
命令列出“howtogeek”系统上的当前用户。她被列为从 pts/1 连接,这是一个伪终端奴隶。也就是说,它不是直接连接到计算机的终端。
要关闭会话,玛丽键入 exit
并返回到“Nostromo”计算机上的 shell。
w
exit

31.须藤
在执行需要 root 或超级用户权限的操作(例如更改其他用户的密码)时,需要 sudo
命令。
sudo passwd mary

32.尾巴
tail
命令为您提供文件最后 10 行的列表。如果您想查看更少或更多行,请使用 -n
(数字)选项。在此示例中,我们使用默认为 10 行的 tail
。然后我们重复命令只要求五行。
tail core.c
tail -n 5 core.c

33.焦油
使用 tar
命令,您可以创建一个包含许多其他文件的存档文件(也称为 tarball)。这使得分发文件集合变得更加方便。您还可以使用 tar
从存档文件中提取文件。要求 tar
压缩档案是很常见的。如果您不要求压缩,则会创建未压缩的存档文件。
要创建存档文件,您需要告诉 tar
要将哪些文件包含在存档文件中,以及您希望存档文件具有的名称。
在此示例中,用户将归档当前目录中 Ukulele 目录中的所有文件。

他们使用了 -c
(创建)选项和 -v
(详细)选项。 verbose 选项通过在将文件添加到存档时将文件列出到终端窗口来提供一些视觉反馈。 -f
(文件名)选项后跟所需的存档名称。在本例中,它是 songs.tar
。
tar -cvf songs.tar Ukulele/

这些文件在添加到存档文件时会列在终端窗口中。
有两种方法可以告诉 tar
您希望压缩归档文件。第一个是使用 -z
(gzip) 选项。这告诉 tar 在创建存档后使用 gzip
实用程序来压缩存档。
通常添加“.gz”作为此类存档的后缀。这允许从中提取文件的任何人都知道将哪些命令传递给 tar
以正确检索文件。
tar -cvzf songs.tar.gz Ukulele/

文件在终端窗口中列出,因为它们像以前一样被添加到存档文件中,但由于压缩所需的时间,存档的创建将花费更长的时间。
要创建使用高级压缩算法压缩的存档文件以提供较小的存档文件,请使用 -j
(bzip2) 选项。
tar -cvjf songs.tar.bz2 Ukulele/

再一次,文件在创建存档时列出。 -j
选项明显比 -z
选项慢。
如果您要归档大量文件,则必须在 -z
选项之间进行选择以实现适当的压缩和合理的速度,或者选择 -j
选项以实现更好的压缩和更慢的速度。
从下面的截图中可以看出,“.tar”文件最大,“.tar.gz”文件较小,“.tar.bz2”文件最小。

要从存档文件中提取文件,请使用 -x
(提取)选项。 -v
(详细)和 -f
(文件名)选项的行为与创建存档时的行为相同。使用 ls
确认您要从哪种类型的存档中提取文件,然后发出以下命令。
ls
tar -xvf songs.tar

文件在提取时列出。请注意,还会为您重新创建 Ukulele 目录。
要从“.tar.gz”存档中提取文件,请使用 -z
(gzip) 选项。
tar -xvzf songs.tar.gz

最后,要从“.tar.bz2”存档中提取文件,请使用 -j
选项而不是 -z
(gzip) 选项。
tar -xvjf songs.tar.bz2

34. 顶
top
命令会实时显示与您的 Linux 机器相关的数据。屏幕顶部是状态摘要。
第一行显示计算机运行的时间和时长,有多少用户登录,以及过去一分钟、五分钟和十五分钟的平均负载是多少。
第二行显示任务的数量及其状态:运行、停止、睡眠和僵尸。
第三行显示 CPU 信息。以下是这些字段的含义:
- us:值是 CPU 在“用户空间”中为用户执行进程所花费的 CPU 时间
- sy:值是运行系统“内核空间”进程所花费的 CPU 时间
- ni: value 是用手动设置的 nice 值执行进程所花费的 CPU 时间
- id:是CPU空闲时间的数量
- wa:值是 CPU 等待 I/O 完成所花费的时间
- hi:处理硬件中断所花费的 CPU 时间
- si:服务软件中断所花费的 CPU 时间
- st:由于运行虚拟机而损失的 CPU 时间(“窃取时间”)
第四行显示物理内存总量,以及空闲、使用和缓冲或缓存的数量。
第五行显示交换内存总量,以及空闲、已用和可用的数量(考虑到预计可从缓存中恢复的内存)。

用户按下 E 键将显示更改为更易于人类理解的数字,而不是表示字节的长整数。
主显示屏中的列由以下部分组成:
- PID:进程号
- USER:进程所有者的姓名
- PR:流程优先级
- NI:过程的美好价值
- VIRT:进程使用的虚拟内存
- RES:进程使用的常驻内存
- SHR:进程使用的共享内存
- S:进程的状态。请参阅下面的列表,了解该字段可以采用的值
- %CPU:自上次更新以来进程使用的 CPU 时间份额
- %MEM:使用的物理内存份额
- TIME+:任务使用的总 CPU 时间,以百分之一秒为单位
- COMMAND:命令名称或命令行(名称+选项)
(命令列不适合屏幕截图。)
进程的状态可以是以下之一:
- D:不间断睡眠
- R:跑步
- S:睡觉
- T:跟踪(停止)
- Z:僵尸
按 Q 键从 top
退出。
35. 名字
您可以使用 uname
命令获取有关您正在使用的 Linux 计算机的一些系统信息。
- 使用
-a
(全部)选项查看所有内容。 - 使用
-s
(内核名称)选项查看内核类型。 - 使用
-r
(内核版本)选项查看内核版本。 - 使用
-v
(内核版本)选项查看内核版本。
uname -a
uname -s
uname -r
uname -v

36.w
w
命令列出当前登录的用户。
w

37. 哇哇
使用 whoami
找出您登录的身份或登录无人 Linux 终端的人。
whoami

那是你的工具包
学习 Linux 就像学习其他任何东西一样。在熟悉这些命令之前,您需要进行一些练习。一旦你掌握了这些命令,你就会走上熟练之路。
有一个古老的笑话——可能与 Unix 本身一样古老——说你唯一需要知道的命令是 man
命令。这其中有一丝道理,但有些手册页没有介绍就难以理解。本教程应该为您提供所需的介绍。
Linux Commands | ||
Files | tar · pv · cat · tac · chmod · grep · diff · sed · ar · man · pushd · popd · fsck · testdisk · seq · fd · pandoc · cd · $PATH · awk · join · jq · fold · uniq · journalctl · tail · stat · ls · fstab · echo · less · chgrp · chown · rev · look · strings · type · rename · zip · unzip · mount · umount · install · fdisk · mkfs · rm · rmdir · rsync · df · gpg · vi · nano · mkdir · du · ln · patch · convert · rclone · shred · srm · scp · gzip · chattr · cut · find · umask · wc | |
Processes | alias · screen · top · nice · renice · progress · strace · systemd · tmux · chsh · history · at · batch · free · which · dmesg · chfn · usermod · ps · chroot · xargs · tty · pinky · lsof · vmstat · timeout · wall · yes · kill · sleep · sudo · su · time · groupadd · usermod · groups · lshw · shutdown · reboot · halt · poweroff · passwd · lscpu · crontab · date · bg · fg · pidof · nohup · pmap | |
Networking | netstat · ping · traceroute · ip · ss · whois · fail2ban · bmon · dig · finger · nmap · ftp · curl · wget · who · whoami · w · iptables · ssh-keygen · ufw · arping · firewalld |
RELATED: Best Linux Laptops for Developers and Enthusiasts