常用 Linux 命令进阶用法详解

常用 Linux 命令进阶用法详解

在日常使用 Linux 的过程中,掌握一些常用命令的进阶用法可以大大提高工作效率。本文将详细介绍 mkdir、vi、cp、mv、tail、head、top、grep 和 cat 这些常用命令的进阶用法。

  1. mkdir(创建目录)
    1.1 创建单个目录

bash

mkdir directory_name

创建一个名为 directory_name 的新目录。
1.2 创建多级目录

bash

mkdir -p /path/to/parent/child/grandchild

-p 选项允许递归地创建多级目录。
1.3 设置权限创建目录

bash

mkdir -m 755 /path/to/dir

-m 选项允许在创建目录时设置权限。
1.4 创建多个目录

bash

mkdir dir1 dir2 dir3

同时创建多个目录 dir1、dir2 和 dir3。
1.5 使用通配符创建目录

bash

mkdir dir{A,B,C}

创建三个目录 dirA,dirB 和 dirC。
2. vi(文本编辑器)
2.1 基本编辑操作

进入插入模式:按 i 键进入插入模式。
退出插入模式:按 Esc 键返回命令模式。
保存并退出:输入 :wq 保存文件并退出。
强制退出不保存:输入 :q! 强制退出,不保存更改。

2.2 查找和替换文本

查找文本:输入 /pattern 查找并高亮显示匹配的文本。
替换文本:输入 :s/old/new/g 替换当前行的匹配项,输入 :%s/old/new/g 替换整个文件的匹配项。

2.3 复制和粘贴

复制文本:输入 yy 复制当前行。
粘贴文本:输入 p 将复制的内容粘贴到当前光标位置。

2.4 撤销和重做

撤销操作:输入 u 撤销上一步的操作。
重做操作:输入 Ctrl+r 重做上一步的操作。
  1. cp(复制文件或目录)
    3.1 复制单个文件

bash

cp source.txt destination.txt

将 source.txt 文件复制为 destination.txt。
3.2 递归复制目录

bash

cp -r /source/directory /destination/directory

-r 选项允许递归复制目录及其内容。
3.3 强制覆盖目标文件

bash

cp -f source.txt /destination/

-f 选项在目标文件已存在时强制覆盖。
3.4 保留原文件属性

bash

cp -p source.txt /destination/

-p 选项保留文件的时间戳、权限和所有者信息。
3.5 交互式复制

bash

cp -i source.txt /destination/

-i 选项在目标文件已存在时提示确认是否覆盖。
3.6 显示复制过程

bash

cp -v source.txt /destination/

-v 选项显示复制过程的详细信息。
3.7 复制多个文件到目录

bash

cp file1.txt file2.txt file3.txt /path/to/directory/

将多个文件复制到指定目录。
4. mv(移动或重命名文件/目录)
4.1 移动文件到目录

bash

mv file.txt /path/to/directory/

将 file.txt 移动到指定目录。
4.2 重命名文件或目录

bash

mv oldname.txt newname.txt

将 oldname.txt 重命名为 newname.txt。
4.3 移动多个文件到目录

bash

mv file1.txt file2.txt /path/to/directory/

将多个文件移动到指定目录。
4.4 强制覆盖目标文件

bash

mv -f source.txt /path/to/destination/

-f 选项强制移动文件,覆盖现有文件。
4.5 交互式移动或重命名

bash

mv -i source.txt /path/to/destination/

-i 选项提示用户确认是否覆盖现有文件。
4.6 避免覆盖目标文件

bash

mv -n source.txt /path/to/destination/

-n 选项避免覆盖现有文件。
4.7 显示详细操作信息

bash

mv -v source.txt /path/to/destination/

-v 选项显示移动或重命名操作的详细信息。
4.8 移动目录及其内容

bash

mv /path/to/source_directory /path/to/destination/

将整个目录及其内容移动到目标目录。
4.9 备份目标文件

bash

mv -b source.txt /path/to/destination/

-b 选项在覆盖前备份目标文件,通常以 ~ 结尾。
4.10 指定备份文件的后缀

bash

mv --backup=numbered source.txt /path/to/destination/

–backup 选项指定备份文件的后缀类型,如 numbered。
4.11 移动符号链接

bash

mv -L symlink /path/to/destination/

-L 选项移动符号链接指向的实际文件。
4.12 防止覆盖时追加新文件名

bash

mv -b -S .bak source.txt /path/to/destination/

-S .bak 选项指定备份文件的后缀名为 .bak。
5. tail(查看文件末尾内容)
5.1 查看最后 10 行

bash

tail /path/to/logfile.log

默认显示文件的最后 10 行。
5.2 查看最后 20 行

bash

tail -n 20 /path/to/logfile.log

-n 选项指定显示的行数,例如显示最后 20 行。
5.3 持续监控文件

bash

tail -f /path/to/logfile.log

-f 选项持续监控文件内容的变化,适用于实时查看日志。
5.4 与 grep 结合使用

bash

tail -f /path/to/logfile.log | grep "ERROR"

实时查看日志文件并过滤显示包含 “ERROR” 的行。
5.5 查看多个文件的尾部

bash

tail -f file1.log file2.log

同时监控多个文件的末尾内容。
6. tail -f(实时查看文件更新)
6.1 实时查看文件更新

bash

tail -f /path/to/logfile.log

持续监控文件的最后几行,并显示文件的新内容。
6.2 显示特定行数并实时监控

bash

tail -n 100 -f /path/to/logfile.log

显示文件的最后 100 行,并继续监控文件内容的变化。
6.3 在进程结束时停止监控

bash

tail -f --pid=1234 /path/to/logfile.log

指定的进程结束时,tail -f 会自动退出。
7. head(查看文件开头内容)
7.1 查看文件的前 10 行

bash

head /path/to/file.txt

默认显示文件的前 10 行。
7.2 查看文件的前 20 行

bash

head -n 20 /path/to/file.txt

-n 选项指定显示的行数,例如显示前 20 行。
7.3 与 grep 结合使用

bash

head -n 100 /path/to/file.txt | grep "pattern"

查看文件开头的内容并过滤显示匹配的行。
7.4 显示除最后几行外的所有行

bash

head -n -5 /path/to/file.txt

显示文件中除最后 5 行外的所有行。
8. top(动态显示系统进程)
8.1 查看进程的动态信息

bash

top

实时查看系统中运行的所有进程的动态信息,包括 CPU、内存使用情况等。
8.2 按 CPU 使用率排序

在 top 中,按下 P 键可以按 CPU 使用率排序显示进程。

8.3 按内存使用率排序

在 top 中,按下 M 键可以按内存使用率排序显示进程。

8.4 仅显示特定用户的进程

bash

top -u username

仅显示指定用户的进程。
8.5 显示特定 PID 的进程

bash

top -p PID

显示特定进程 ID 的进程信息。
8.6 终止进程

在 top 中,按下 k 键,然后输入要终止的进程 ID。

8.7 持续时间设置

bash

top -d 5

-d 选项设置 top 更新显示的间隔时间(以秒为单位)。
9. grep(搜索文本内容)
9.1 在文件中搜索字符串

bash

grep "pattern" file.txt

搜索 file.txt 文件中包含 pattern 的行并显示。
9.2 递归搜索目录

bash

grep -r "pattern" /path/to/directory/

-r 选项允许递归搜索目录中的文件。
9.3 忽略大小写

bash

grep -i "pattern" file.txt

-i 选项忽略大小写进行搜索。
9.4 显示行号

bash

grep -n "pattern" file.txt

-n 选项在显示匹配结果时显示行号。
9.5 只显示匹配的文件名

bash

grep -l "pattern" /path/to/directory/*

-l 选项只显示包含匹配模式的文件名。
9.6 搜索多个文件

bash

grep "pattern" file1.txt file2.txt

同时搜索多个文件中的匹配模式。
9.7 显示匹配行的上下文

bash

grep -C 2 "pattern" file.txt

-C 选项显示匹配行及上下文各两行。
9.8 显示不匹配的行

bash

grep -v "pattern" file.txt

-v 选项显示不包含匹配模式的行。
9.9 从命令输出中搜索

bash

ps aux | grep "sshd"

搜索进程列表中包含 sshd 的行。
10. cat(查看文件内容)
10.1 查看单个文件内容

bash

cat file.txt

显示 file.txt 文件的内容。
10.2 查看多个文件内容

bash

cat file1.txt file2.txt

将多个文件的内容串联显示。
10.3 显示行号

bash

cat -n file.txt

-n 选项显示文件内容的行号。
10.4 将文件内容重定向到新文件

bash

cat file1.txt > newfile.txt

将 file1.txt 的内容复制到 newfile.txt。
10.5 追加文件内容到现有文件

bash

cat file1.txt >> existingfile.txt

将 file1.txt 的内容追加到 existingfile.txt 末尾。
10.6 合并多个文件

bash

cat file1.txt file2.txt > combined.txt

将 file1.txt 和 file2.txt 的内容合并并保存到 combined.txt。
10.7 反向显示文件内容

bash

tac file.txt

tac 是 cat 的反向显示版本,从文件末尾向上显示内容。
10.8 通过管道将内容传递给其他命令

bash

cat file.txt | grep "pattern"

将 file.txt 的内容通过管道传递给 grep,以过滤包含 pattern 的行。

以上就是常用 Linux 命令的详细进阶用法。希望这些内容能帮助你更高效地使用 Linux 系统进行文件管理、文本处理和系统监控。如果你有更多的问题或需要更深入的解释,欢迎留言讨论!

转载请注明出处。

  • 8
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值