文件管理

ls - 列出目录内容

ls 为 list 的缩写。

语法:

ls [options] [directory]

常用搭配:

ls -a 列出目录所有文件,包含以.开始的隐藏文件
ls -A 列出除.及..的其它文件
ls -r 反序排列
ls -t 以文件修改时间排序
ls -S 以文件大小排序
ls -h 以易读大小显示
ls -l 除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来

使用实例:

  • 按易读方式按时间反序排序,并显示文件详细信息
ls -lhrt
  • 按大小反序显示文件详细信息
ls -lrS
  • 列出当前目录中所有以"t"开头的目录的详细内容
ls -l t*
  • 列出文件绝对路径(不包含隐藏文件)
ls | sed "s:^:\pwd\/:"

sed "s:^:pwd/:":sed 是一个流编辑器,用来处理文本流。在这个命令中,s 是替换命令,^ 表示行的开头。这个命令的意思是在每行的开头(文件或文件夹名字的开头),将行首的 ^ 替换成当前目录的路径(使用 pwd 命令获取)加上 /

  • 列出文件绝对路径(包含隐藏文件)
find $pwd -maxdepth 1 | xargs ls -ld

find $pwd -maxdepth 1 这个命令使用 find 来搜索当前目录下的文件和文件夹,$pwd 表示当前目录,-maxdepth 1 表示只搜索当前目录而不搜索子目录。

|:管道符号,将 find 的输出传递给下一个命令。

xargs ls -ld:xargs 命令可以将 find 输出的结果作为参数传递给后面的命令。在这里,ls -ld 是用来列出文件和文件夹的详细信息的命令。-l 表示长格式,-d 表示只列出目录本身,而不是目录下的内容。

cd - 更改目录

语法:

cd [directory]

常用搭配:

cd /  进入根目录
cd ~  进入“home”目录
cd -  进入上一次工作路径
cd !$ 把上个命令的参数作为这次的参数使用
cd .. 进入上级目录

mkdir & rmdir - 目录操作

rmdir 只能删除空目录。

语法:

mkdir [options] [directory]
rmdir [options] [directory]

常用搭配:

mkdir -p /tmp/test 创建一个 tmp 目录下的 test 文件夹
mkdir -m 可以对新建目录设置权限
mkdir test 在当前目录下创建 test 文件夹

rmdir -p /tmp/test 删除 tmp 目录下的 test 文件夹
rmdir test 删除当前目录的 test 文件夹
rmdir -v ~/project/code 这将删除 project 下的 code 文件夹,同时显示详细输出。

touch – 创建新的空文件

touch 命令允许您更新指定文件的访问和修改时间。

语法:

touch [options] filename

常用搭配:

touch -m filename 修改文件日期为当前时间
touch -c filename 如果文件已经存在,则不创建该文件 

cp - 复制文件和目录

语法:

cp [options] source destination

常用搭配:

cp -i 提示
cp -r 复制目录及目录内所有项目
cp -a 复制的文件与原文件时间一样
cp -v 详细展示复制内容
  • 可以用递归标志复制整个目录:
cp -r dir_to_copy/ new_copy_dir/
  • 复制 a.txt 到 test 目录下,保持原文件时间,如果原文件存在提示是否覆盖。
cp -ai a.txt test

mv - 移动或重命名文件和目录

语法:

mv [options] source destination

常用搭配:

mv -i – 在覆盖目标位置的任何现有文件前提示。这样可以防止意外覆盖数据。
mv -v – 在移动文件或目录时,生成显示每个文件或目录的详细输出。这有助于准确确认移动的内容。
  • 要使用绝对路径,请使用:
mv /home/MyGO/BestMoviesOfAllTime ./
  • 还可以使用mv重命名文件,同时将其保留在同一目录中:
mv old_file.txt new_named_file.txt

rm - 移除文件和目录

语法:

rm [options] name

常用搭配:

rm -r – 递归删除目录,包括目录中的所有内容。这在删除目录时很有必要。
rm -f – 强制删除并抑制所有确认提示。这是一条危险的命令,因为文件删除后无法恢复!
rm -i – 在删除每个文件或目录前提示确认,以防意外删除。
  • 要删除包含内容的目录,需要使用force(-f)和recursive标志:
rm -rf dir_with_content_to_remove/
  • 如果要删除空目录,可以使用递归(-r)标志:
rm -r dir_to_remove/
  • 删除以 -f 开头的文件
rm -- -f*

find - 在目录层次结构中搜索文件

find 命令会递归搜索目录中符合给定条件的文件。

语法:

find [path] [criteria]

常用搭配:

find -type f – 仅搜索普通文件,省略目录。
find -mtime +30 – 搜索 30 天前修改的文件。
find -user jane – 搜索属于用户 “jane” 的文件。
find -group  按照文件所属的组来查找文件。
find -type  查找某一类型的文件,诸如:
   b - 块设备文件
   d - 目录
   c - 字符设备文件
   l - 符号链接文件
   p - 管道文件
   f - 普通文件

find -size n :[c] 查找文件长度为n块文件,带有c时表文件字节大小
find -amin n   查找系统中最后N分钟访问的文件
find -atime n  查找系统中最后n*24小时访问的文件
find -cmin n   查找系统中最后N分钟被改变文件状态的文件
find -ctime n  查找系统中最后n*24小时被改变文件状态的文件
find -mmin n   查找系统中最后N分钟被改变文件数据的文件
find -mtime n  查找系统中最后n*24小时被改变文件数据的文件
(用减号-来限定更改时间在距今n日以内的文件,而用加号+来限定更改时间在距今n日以前的文件。 )
find -maxdepth n 最大查找目录深度
find -prune 选项来指出需要忽略的目录。在使用-prune选项时要当心,因为如果你同时使用了-depth选项,那么-prune选项就会被find命令忽略
find -newer 如果希望查找更改时间比某个文件新但比另一个文件旧的所有文件,可以使用-newer选项
  • 这将查找当前目录(用圆点表示)下所有超过 30 天的常规文件。
find . -type f -mtime +30
  • 查找大于 1K 的文件
find -size +1000c
  • 查找等于 1000 字符的文件
find -size 1000c 
  • 查找 /opt 目录下 权限为 777 的文件
find /opt -perm 777
  • 当前目录中查找所有文件名以.log结尾、更改时间在5日以上的文件,并删除它们,只不过在删除之前先给出提示。 按y键删除文件,按n键不删除
find . -name '*.log' mtime +5 -ok -exec rm {} \;
  • 用 exec 选项执行 cp 命令
find . -name '*.log' -exec cp {} test3 \;

搜索和过滤

grep – 使用条件匹配搜索文本

语法:

grep [options] pattern [files]

grep 的规则表达式:

^  #锚定行的开始 如:'^grep'匹配所有以grep开头的行。 
$  #锚定行的结束 如:'grep$'匹配所有以grep结尾的行。 
.  #匹配一个非换行符的字符 如:'gr.p'匹配gr后接一个任意字符,然后是p。  
*  #匹配零个或多个先前字符 如:'*grep'匹配所有一个或多个空格后紧跟grep的行。
.*   #一起用代表任意字符。  
[]   #匹配一个指定范围内的字符,如'[Gg]rep'匹配Grep和grep。 
[^]  #匹配一个不在指定范围内的字符,如:'[^A-FH-Z]rep'匹配不包含A-R和T-Z的一个字母开头,紧跟rep的行。  
\(..\)  #标记匹配字符,如'\(love\)',love被标记为1。   
\<      #锚定单词的开始,如:'\<grep'匹配包含以grep开头的单词的行。
\>      #锚定单词的结束,如'grep\>'匹配包含以grep结尾的单词的行。
x\{m\}  #重复字符x,m次,如:'0\{5\}'匹配包含5个o的行。 
x\{m,\}  #重复字符x,至少m次,如:'o\{5,\}'匹配至少有5个o的行。  
x\{m,n\}  #重复字符x,至少m次,不多于n次,如:'o\{5,10\}'匹配5--10个o的行。  
\w    #匹配文字和数字字符,也就是[A-Za-z0-9],如:'G\w*p'匹配以G后跟零个或多个文字或数字字符,然后是p。  
\W    #\w的反置形式,匹配一个或多个非单词字符,如点号句号等。  
\b    #单词锁定符,如: '\bgrep\b'只匹配grep。

常用搭配:

grep -i – 忽略条件中的大小写区别
grep -R – 递归搜索子目录
grep -c – 只打印匹配行数
grep -v – 反转匹配,打印不匹配的行
grep -A n --after-context显示匹配字符后n行
grep -B n --before-context显示匹配字符前n行
grep -C n --context 显示匹配字符前后n行
grep -l 只列出文件内容符合指定的样式的文件名称
  • 搜索与正则表达式匹配的行并打印它们,例如下面命令将搜索 long.txt 文件中的 “linux”一词,忽略大小写敏感性。
grep "linux" long.txt
  • 查找指定进程
ps -ef | grep svn
  • 查找指定进程个数
ps -ef | grep svn -c
  • 从文件中读取关键词
cat test1.txt | grep -f key.log
  • 从文件夹中递归查找以 grep 开头的行,并只列出文件
grep -lR '^grep' /tmp
  • 显示包含 ed 或者 at 字符的内容行
grep -E 'ed|at' test.txt

awk – 条件扫描和处理语言

awk 命令允许根据指定的条件和操作进行更高级的文本处理。它逐行操作,将每行分割成字段。

语法:

awk 'pattern { action }' input-file

有如下功能:

  • 字段数学计算
  • 条件语句
  • 用于处理字符串、数字和日期的内置函数
  • 输出格式控制

awk 的功能非常强大,因为它是一种独立的编程语言,作为 Linux 命令,它可以给你很多控制权。

  • 打印任何包含 “error” 的行的第一个字段
awk '/error/ {print $1}' /var/log/syslog

sed – 用于过滤和转换文本的流编辑器

sed 命令允许过滤和转换文本。它可以执行搜索、替换、删除、移位等操作。不过,与 awk 不同的是,sed 是为按指令逐行编辑而设计的。

语法:

sed options 'commands' input-file

常用搭配:

sed 's/pattern/replacement/' filename – 搜索和替换文本
sed '/pattern/d' filename – 删除与模式匹配的行
sed '10,20d' filename – 删除第 10-20 行
sed '1,3!d' filename – 删除除 1-3 行以外的所有行
  • 将 file.txt 中的 “foo” 替换为 “bar”。
sed 's/foo/bar/' file.txt

sort – 对文本文件行进行排序

sort 命令将按字母或数字对文本文件的行进行排序。

语法:

sort [options] [file]

常用搭配:

sort -n – 按数字而不是字母排序
sort -r – 反转排序顺序
sort -k – 根据特定字段或列排序
  • 对 grades.txt 中的内容进行数字排序。
sort -n grades.txt

diff – 逐行比较文件

diff 命令逐行比较两个文件并打印差异。它通常用于显示文件版本之间的变化。

语法:

diff [options] file1 file2

常用搭配:

diff -b – 忽略空白处的更改。
diff -B – 在行内显示差异,高亮显示更改。
diff -u – 用三行上下文输出差异。

wc – 打印行数、字数和字节数

wc 命令打印文件中的行数、字数和字节数。

语法:

wc [options] [file]

常用搭配:

wc -l – 只打印行计数。
wc -w – 只打印字数。
wc -c – 仅打印字节数。

归档

归档命令允许你将多个文件和目录捆绑到压缩归档文件中,以方便移植和存储。Linux 中常见的压缩包格式包括 .tar、.gz 和 .zip。

tar – 从归档文件中存储和提取文件

tar 命令可帮助你处理磁带归档文件(.tar)。它可以帮助你将多个文件和目录捆绑到一个压缩的 .tar 文件中。

语法:

tar [options] filename

常用搭配:

tar -c – 创建一个新的 .tar 压缩文件。
tar -x – 从 .tar 压缩文件中提取文件。
tar -f – 指定存档文件名,而不是 stdin/stdout。
tar -v – 显示归档文件的详细输出。
tar -z – 使用 gzip 压缩或解压缩压缩包。
  • 创建一个名为 images.tar.gz 的 gzip 压缩文件,其中包含 /home/user/images 文件夹。
tar -cvzf images.tar.gz /home/user/images

gzip – 压缩或扩展文件

gzip 命令使用 LZ77 编码压缩文件,以减小存储或传输文件的大小。使用 gzip,你可以处理 .gz 文件。

语法:

gzip [options] filename

常用搭配:

gzip -c – 将输出写入 stdout,而不是文件。
gzip -d – 解压缩文件,而不是压缩文件。
gzip -r – 对目录进行递归压缩。
  • 递归压缩 documents 文件夹并输出到 stdout
gzip -cr documents/

gunzip – 解压缩文件

gunzip 命令用于解压缩 .gz 文件。

语法:

gunzip filename.gz

文件传输

scp – 在主机间安全复制文件

scp (安全复制)命令通过 SSH 连接在主机间复制文件。所有数据传输都经过加密,以确保安全。

语法:

scp source user@host:destination
  • 以 user 身份将 image.jpg 复制到 server 上的 /uploads 文件夹
scp image.jpg user@server:/uploads/

rsync – 在主机间安全复制文件

rsync 工具可在两个位置之间同步文件,同时使用 delta 编码尽量减少数据传输。这使得同步大型目录树的速度更快。

语法:

rsync [options] source destination

常用搭配:

rsync -a – 归档模式递归同步并保留权限、时间等。
rsync -h – 人类可读输出。
rsync -v – 冗余输出。
  • 上述示例命令将 documents 文件夹递归同步到 server:/backups/,并显示冗长的、人类可读的输出。
rsync -ahv ~/documents user@server:/backups/

wget – 在主机间安全复制文件

wget (World Wide Web get)是从互联网检索内容的实用工具。它拥有最大的flags之一。

语法:

wget [options] URL 

常用搭配:

wget -c – 恢复中断的下载。
wget -r – 递归下载。
wget -O – 保存到特定文件名。

curl – 在主机间安全复制文件

curl 命令可使用支持的协议与网络服务器之间传输数据。这包括 REST、HTTP、FTP 等。

语法:

curl [options] URL 

常用搭配:

curl -o – 将输出写入文件。
curl -I – 仅显示响应头。
curl -L – 跟踪重定向。

文件权限

文件权限命令允许你修改用户的访问权限。这包括设置读/写/执行权限、更改所有权和默认文件模式。

chmod – 更改文件模式或访问权限

chmod 命令允许您快速更改文件的模式(权限)。它有很多可用的选项。

语法:

chmod [options] files

常用搭配:

7 – 读取、写入和执行。
6 – 读和写。
4 – 只读。
0 – 无权限。
chmod g+w file.txt g+w 语法为文件添加组写入权限。
  • 使文件可由用户执行
chmod +x script

chown – 更改文件所有者和组

chown 命令可更改文件或目录的所有权。所有权包括两个部分–所有者用户和所属组。

  • 将所有者用户设置为 “john”,所有者组设置为 “developers”。
chown john:developers file.txt

只有 root 超级用户账户才能使用 chown 更改文件所有者。它可以根据需要修改所有者和组来解决权限问题。

进程管理

ps – 报告当前进程概览

使用 ps 您可以查看当前shell会话正在运行的进程。它打印有关正在运行的程序的有用信息,如进程ID、TTY(电传打字机)、时间和命令名。

语法:

ps [options]

常用搭配:

aux – 显示所有用户的进程
--forest – 显示父进程/子进程树

top – 显示 Linux 进程

top 命令显示实时 Linux 进程信息,包括 PID、用户、CPU %、内存使用率、运行时间等。与 ps 不同的是,它会动态更新显示内容,以反映当前的使用情况。

语法:

top [options]

常用搭配:

top -u mysql 监控 “mysql” 用户的进程。

htop – 交互式进程浏览器

top 相比, htop 的用户界面元素得到了增强,增加了颜色、滚动和鼠标支持,导航更加方便。非常适合调查进程。(在大多数情况下,默认情况下它并没有安装)

kill – 向进程发送信号

kill 向终止它的进程发送一个TERM或kill信号。

语法:

kill PID

常用搭配:

kill -15 12345 发送 SIGTERM (15) 信号,以优雅地停止 PID 为 12345 的进程。

pkill – 根据名称向进程发送信号

pkill 命令通过名称而不是 PID 来杀死进程。这比先找到 PID 更容易。

语法:

pkill name
  • 强制停止所有带有 SIGKILL (9) 的 Firefox 进程。pkill 通过匹配名称、用户和其他条件而非 PID 来锁定进程。
pkill -9 firefox

nohup – 运行不受挂起影响的命令

nohup 命令可运行不受挂起影响的进程,因此即使注销或断开连接,它们也能继续运行。

语法:

nohup [command]
  • 在后台启动分离的 script.py,并且不会被挂起。 nohup 通常用于启动持久的后台守护进程和服务。
nohup python script.py &

性能监控

vmstat – 报告虚拟内存统计数据

vmstat 命令可打印有关内存、交换、I/O 和 CPU 活动的详细报告。其中包括已用/可用内存、交换入/出、磁盘块读/写和 CPU 进程/闲置时间等指标。

语法:

vmstat [options]

常用搭配:

vmstat -a – 显示活动和非活动内存
vmstat -s – 显示事件计数器和内存统计信息
vmstat -S – 以 KB 而不是块为单位输出
vmstat 5 – 每 5 秒刷新一次输出。

iostat – 报告 CPU 和 I/O 统计数据

iostat 命令监控并显示 CPU 利用率和磁盘 I/O 指标。其中包括 CPU 负载、IOPS、读/写吞吐量等。。

语法:

iostat [options]

常用搭配:

iostat -c – 显示 CPU 使用率信息
iostat -t – 为每份报告打印时间戳
iostat -x – 显示服务时间和等待计数等扩展统计信息
iostat -d – 显示每个磁盘/分区的详细统计信息,而不是合计总数
iostat -p – 显示特定磁盘设备的统计信息

free – 显示可用和已用内存量

free 命令显示系统中物理内存和交换内存的总量、已用量和空闲量。这将提供可用内存的总体情况。

语法:

free [options]

常用搭配:

free -b – 以字节为单位显示输出
free -k – 以 KB(而非默认字节)为单位显示输出结果
free -m – 以 MB 为单位显示输出,而不是以字节为单位
free -h – 以 GB、MB 等人类可读格式打印统计数据,而不是字节。

用户管理

useradd – 创建新用户

useradd 命令用于创建新用户账户和主目录。它会设置新用户的 UID、组、shell 和其他默认值。

语法:

useradd [options]

常用搭配:

useradd -m – 创建用户的主目录。
useradd -g – 指定主组,而不是默认组。
useradd -s – 设置用户的登录 shell。

usermod – 修改用户账户

usermod 命令可修改现有用户账户的设置。这可以更改用户名、主目录、shell、组、有效期等。

语法:

usermod [options]
  • 将用户 john 添加到一个额外的组-“developers”。-a 会追加到用户添加到的现有组列表中。
usermod -a developers john

userdel – 删除用户账户

userdel 命令用于删除用户账户、主目录和邮件 spool。

语法:

userdel [options]

常用搭配:

userdel -r – 删除用户的主目录和邮件线轴。
userdel -f – 即使用户仍在登录,也强制删除。

groupadd – 添加一个组

groupadd 命令用于创建一个新的用户组。就权限而言,组代表团队或角色。

语法:

groupadd [options]

常用搭配:

groupadd -r – 创建用于核心系统功能的系统组。
groupadd -g – 指定新组的 GID,而不是使用下一个可用的 GID。

passwd – 更新用户的身份验证令牌

passwd 允许您更改用户帐户的密码。首先,它会提示您输入当前密码,然后要求您输入新密码并确认。

网络

ping – 向网络主机发送 ICMP ECHO_REQUEST

ping 是用于测试网络连接的最流行的网络终端工具。ping 有很多选项,但在大多数情况下,您将使用它来请求域或IP地址:

语法:

ping URL

常用搭配:

ping -c [count] – 限制发送的数据包。
ping -i [interval] – ping 之间的等待间隔秒数。

ifconfig – 配置网络接口

ifconfig 命令显示并配置网络接口设置,包括 IP 地址、网络掩码、广播、MTU 和硬件 MAC 地址。

traceroute – 追踪到主机的路由

traceroute 命令打印数据包到网络主机的路径,显示沿途的每一跳和传输时间。对网络调试很有用。

dig – DNS 查找

dig 命令执行 DNS 查找并返回域的 DNS 记录信息。

nslookup – 交互式查询 DNS 服务器

nslookup 命令以交互方式查询 DNS 服务器,以执行名称解析查询或显示 DNS 记录。

它进入一个交互式 shell,允许你手动查询主机名、反向 IP 地址、查找 DNS 记录类型等。

例如,一些常见的 nslookup 使用方法。在命令行中键入 nslookup

nslookup

接下来,我们将设置 Google 8.8.8.8 DNS 服务器用于查询。

> server 8.8.8.8

现在,让我们查询 http://stackoverflow.com 的 A 记录,找到它的 IP 地址。

> set type=A
> stackoverflow.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
Name: stackoverflow.com
Address: 104.18.32.7
Name: stackoverflow.com
Address: 172.64.155.249

现在,让我们查找 http://github.com 的 MX 记录,查看其邮件服务器。

> set type=MX
> github.com
Server: 8.8.8.8
Address: 8.8.8.8#53
Non-authoritative answer:
github.com mail exchanger = 1 aspmx.l.google.com.
github.com mail exchanger = 5 alt1.aspmx.l.google.com.
github.com mail exchanger = 5 alt2.aspmx.l.google.com.
github.com mail exchanger = 10 alt3.aspmx.l.google.com.
github.com mail exchanger = 10 alt4.aspmx.l.google.com.

交互式查询使 nslookup 对探索 DNS 和排除名称解析问题非常有用。

iptables – IPv4 数据包过滤和 NAT

使用 iptables 命令可以配置 Linux netfilter 防火墙规则,以过滤和处理网络数据包。它为系统如何处理不同类型的入站和出站连接及流量设置了策略和规则。

  • 阻止来自 IP 192.168.1.10 的所有输入
iptables -A INPUT -s 192.168.1.10 -j DROP

系统信息

uname – 打印系统信息

uname 命令可打印 Linux 系统内核、硬件架构、主机名和操作系统的详细信息。其中包括版本号和机器信息。

语法:

uname [options]

常用搭配:

uname -a – 打印所有可用的系统信息
uname -r – 只打印内核版本号

hostname – 显示或设置系统主机名

hostname 命令将打印或设置网络中 Linux 系统的主机名标识符。在没有参数的情况下,它会显示当前的主机名。传递名称将更新主机名。

语法:

hostname new_name

常用搭配:

hostname UbuntuServer 将本地主机名更改为 UbuntuServer

uptime – 系统运行了多久

uptime 命令显示 Linux 系统自上次重启以来已经运行了多长时间。它会打印出运行时间和当前时间。

whoami – 打印有效用户 ID

whoami 命令将打印当前登录系统用户的有效用户名。它还会显示您的操作权限级别。

lscpu – 显示 CPU 架构信息

lscpu 命令显示详细的 CPU 架构信息,包括CPU 内核数 | 接口数量 | 型号名称 | 缓存大小 | CPU 频率 | 地址大小

系统管理

sudo – 以其他用户身份执行命令

sudo 命令允许你以另一个用户(通常是超级用户)的身份运行命令。输入 sudo 命令后,系统会提示您输入密码进行身份验证。
这为安装软件包、编辑系统文件、管理服务等任务提供了高级访问权限。
语法:

sudo [options]

常用搭配:

sudo adduser bob
sudo apt install 
sudo cd /root/

su – 更改用户 ID 或成为超级用户使用

su 命令可以切换到另一个用户账户,包括超级用户。必须提供目标用户的密码才能进行身份验证。这样就可以直接在另一个用户的环境中运行命令。

语法:

su username

shutdown – 关闭或重启 Linux

shutdown 命令用于在指定计时器后或立即关闭、停止或重启系统。要安全地重启或关闭多用户 Linux 系统,需要使用该命令。

要立即关闭计算机电源(默认为一分钟),请键入:

shutdown now

您还可以计划以24小时格式关闭系统:

shutdown 20:40

要取消以前的shutdown调用,可以使用-c标志:

shutdown -c

reboot – 重启或重新启动系统

reboot 命令可重启 Linux 操作系统,注销所有用户并安全地重启系统。它会同步磁盘,并在重启前干净利落地关闭系统。

systemctl – 控制 systemd 系统和服务管理器

systemctl 命令允许你管理 systemd 服务,如启动、停止、重启或重新加载它们。
systemd 是大多数现代 Linux 发行版使用的新启动系统,取代了 SysV init。

语法:

systemctl start/stop 

service – 运行 System V 初始化脚本

service 命令运行用于控制服务的 System V 初始脚本。这允许启动、停止、重启和重新加载在传统 SysV init 下管理的服务。

使用 SysV init 脚本启动了 iptables 防火墙服务。

service iptables start

其他

history – 运行 System V 初始化脚本

history 命令显示一个枚举列表,其中包含您过去使用过的命令:

man – 直接在终端中访问命令的帮助手册。

man 它显示任何其他命令的手册页面(只要有)

pwd – 代表“打印工作目录”,它输出您所在目录的绝对路径。

screen – 从一个窗口管理多个终端会话。

tcpdump – 根据特定标准捕获网络流量。

nmap – 主机发现、端口扫描和操作系统指纹。

cat – 用于直接从终端创建、查看和连接文件。

which – 输出shell命令的完整路径。

which python
# /usr/bin/python

less – 允许您前后检查文件的程序。

less(与 more 相反)是一个允许您前后检查文件的程序:

tail – 打印文件内容后几行。

cat 类似,tail 打印文件内容时有一个主要警告:它只输出最后几行。默认情况下,它打印最后 10 行,但您可以使用 -n 修改该数字。

  • 要打印大型文本文件的最后几行,可以使用:
tail long.txt
  • 查看最后四行
tail -n 4 long.txt

headtail 正好相反。