目录
0.前言
1.find指令
1.1概述
1.2功能
1.3语法
1.4常用选项
1.5示例
2.grep指令
2.1概述
2.2功能
2.3语法
2.4常用选项
2.5使用示例
3.zip/unzip指令
3.1概述
3.2功能
3.3语法
3.4常用选项
3.5使用示例
4.tar指令
4.1概述
4.2功能
4.3语法
4.4常用选项
4.5使用示例
5.bc指令
5.1概述
5.2功能
5.3语法
5.4常用选项
5.5使用示例
6.uname -r指令
6.1概述
6.2功能
6.3语法
6.4使用示例
7.重要的几个热键[Tab],[ctrl]-c, [ctrl]-d
7.1[Tab]键
7.1.1功能
7.1.2使用方法
7.1.3示例
7.2[Ctrl]-C
7.2.1功能
7.2.2使用方法
7.2.3示例
7.3[Ctrl]-D
7.3.1功能
7.3.2使用方法
7.3.3示例
8.关机指令
8.1 shutdown
8.2 reboot
8.3 halt
8.4 poweroff
9.小结
(图像由AI生成)
0.前言
在Linux基本指令(一)-CSDN博客中,我们学习了如何使用Xshell7远程登录Linux系统,以及一系列基本的Linux指令,包括 ls
、pwd
、cd
、touch
、mkdir
、rmdir
、rm
、man
、cp
、mv
和 cat
。本节将继续深入学习更多常用的Linux指令,帮助大家更好地掌握Linux系统的操作。
1.find指令
1.1概述
find
命令是Linux系统中非常重要的一个工具,用于在目录结构中搜索文件,并执行指定的操作。find
命令提供了相当多的查找条件,功能非常强大。由于其强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
1.2功能
- 在文件树中查找文件,并作出相应的处理(可能访问磁盘)。
- 即使系统中含有网络文件系统(NFS),
find
命令在该文件系统中同样有效,只要你具有相应的权限。 - 运行一个非常消耗资源的
find
命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系统可能会花费很长的时间(指30G字节以上的文件系统)。
1.3语法
find [pathname] [options]
1.4常用选项
-name
:按照文件名查找文件。
1.5示例
- 在当前目录及其子目录中查找名为
example.txt
的文件:
find . -name "example.txt"
- 在
/home
目录及其子目录中查找扩展名为.log
的文件:
find /home -name "*.log"
- 查找
/var
目录下所有大于100MB的文件:
find /var -size +100M
- 查找
/tmp
目录下最近7天修改过的文件:
find /tmp -mtime -7
- 查找并删除
/var/log
目录下的所有.log
文件:
find /var/log -name "*.log" -exec rm -f {} \;
使用 find
命令时,需要注意其消耗系统资源的程度,特别是在大文件系统中执行复杂查找时,应尽量避免在高峰期运行这些命令。
2.grep指令
2.1概述
grep
命令用于在文件中搜索特定的字符串模式,并将包含该字符串的行打印出来。它是一个强大的文本搜索工具,支持使用正则表达式进行复杂的模式匹配。
2.2功能
在文件中搜索字符串,将找到的行打印出来。
2.3语法
grep [选项] 搜寻字符串 文件
2.4常用选项
-i
:忽略大小写的不同,所以大小写视为相同。-n
:顺便输出行号。-v
:反向选择,即显示出没有 '搜寻字符串' 内容的那一行。
2.5使用示例
- 在文件
example.txt
中搜索包含hello
的行:
grep "hello" example.txt
- 在文件
example.txt
中搜索包含hello
的行,并忽略大小写:
grep -i "hello" example.txt
- 在文件
example.txt
中搜索包含hello
的行,并显示行号:
grep -n "hello" example.txt
- 在文件
example.txt
中搜索不包含hello
的行:
grep -v "hello" example.txt
- 在当前目录及其子目录中的所有文件中搜索包含
error
的行:
grep -r "error" .
- 使用正则表达式搜索以
foo
开头的行:
grep "^foo" example.txt
grep
命令是进行文本搜索和处理的利器,特别适用于日志文件分析、代码审查和大规模文本处理等场景。掌握 grep
命令的各种选项和用法,可以极大地提高工作效率。
3.zip/unzip指令
3.1概述
zip
和 unzip
指令用于压缩和解压缩文件,是处理文件归档和压缩的常用工具。zip
用于创建压缩文件,而 unzip
用于解压缩文件。
3.2功能
zip
:将文件和目录压缩成.zip
文件格式。unzip
:解压.zip
文件格式的压缩包。
3.3语法
zip
zip [选项] 压缩包名.zip 文件/目录
unzip
unzip [选项] 压缩包名.zip
3.4常用选项
zip选项
-r
:递归地将目录及其内容压缩。-q
:安静模式,不显示压缩过程中的信息。-x
:排除特定文件或目录。
unzip选项
-l
:显示压缩包中的文件列表。-q
:安静模式,不显示解压过程中的信息。-d
:指定解压缩文件的目标目录。
3.5使用示例
zip示例
- 将单个文件
file1.txt
压缩成archive.zip
:
zip archive.zip file1.txt
- 将目录
myfolder
及其所有子文件和子目录压缩成archive.zip
:
zip -r archive.zip myfolder
- 将多个文件
file1.txt
和file2.txt
压缩成archive.zip
:
zip archive.zip file1.txt file2.txt
- 将文件压缩成
archive.zip
,但排除file2.txt
:
zip archive.zip file1.txt myfolder -x file2.txt
unzip示例
- 解压
archive.zip
到当前目录:
unzip archive.zip
- 解压
archive.zip
并显示压缩包中的文件列表:
unzip -l archive.zip
- 解压
archive.zip
到指定目录myfolder
:
unzip archive.zip -d myfolder
- 静默解压
archive.zip
,不显示过程信息:
unzip -q archive.zip
zip
和 unzip
是管理压缩文件的基本工具,支持广泛的选项和用法,可以方便地创建和解压缩 .zip
文件。在日常工作中,通过掌握这些指令,可以有效地管理和传输大批量的文件。
4.tar指令
4.1概述
tar
指令用于打包和解压文件,是Linux系统中非常常用的文件归档工具。它可以将多个文件或目录打包成一个单一的归档文件,并且可以选择性地进行压缩。tar
指令支持多种压缩格式,如gzip和bzip2。
4.2功能
- 打包文件和目录。
- 解压归档文件。
- 查看归档文件内容。
4.3语法
tar [选项] [归档文件名] [文件/目录]
4.4常用选项
-c
:创建一个压缩文件的参数指令(create的意思)。-x
:解开一个压缩文件的参数指令。-t
:查看tarfile里面的文件。-z
:是否同时具有gzip的属性。-j
:是否同时具有bzip2的属性。-v
:压缩的过程中显示文件。-f
:使用档名。-C
:解压到指定目录。
4.5使用示例
示例一:将整个 /etc
目录下的文件全部打包成为 /tmp/etc.tar
tar -cvf /tmp/etc.tar /etc
示例二:将 /etc
目录打包成gzip压缩的归档文件 /tmp/etc.tar.gz
tar -zcvf /tmp/etc.tar.gz /etc
示例三:将 /etc
目录打包成bzip2压缩的归档文件 /tmp/etc.tar.bz2
tar -jcvf /tmp/etc.tar.bz2 /etc
示例四:查看 /tmp/etc.tar.gz
文件内有哪些文件
tar -ztvf /tmp/etc.tar.gz
示例五:将 /tmp/etc.tar.gz
文件解压缩到 /usr/local/src
目录下
cd /usr/local/src
tar -zxvf /tmp/etc.tar.gz
示例六:在 /tmp
目录下,解压缩 /tmp/etc.tar.gz
文件内的 etc/passwd
文件
cd /tmp
tar -zxvf /tmp/etc.tar.gz etc/passwd
示例七:将 /etc
目录下的所有文件备份下来,并且保存其权限
tar -zcvpf /tmp/etc.tar.gz /etc
示例八:在 /home
当中,只备份在 2005/06/01 新的文件
tar -N "2005/06/01" -zcvf home.tar.gz /home
示例九:备份 /home
和 /etc
目录,但不要 /home/dmtsai
tar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etc
示例十:将 /etc
目录打包后直接解开在 /tmp
底下,而不产生文件
cd /tmp
tar -cvf - /etc | tar -xvf -
tar
指令是Linux系统中非常强大和灵活的文件归档工具,支持多种操作和选项。掌握 tar
指令的使用方法,可以高效地进行文件备份、归档和压缩处理。
5.bc指令
5.1概述
bc
指令是Linux系统中的一款命令行计算器,支持任意精度的数学运算,并提供交互式计算环境。它不仅可以进行基本的算术运算,还支持高级的数学功能和自定义脚本编程。
5.2功能
- 支持高精度的数学计算。
- 提供交互式计算环境。
- 支持基本和高级的算术运算。
5.3语法
bc [选项]
5.4常用选项
-l
:加载数学库,提供更多数学函数(如正弦、余弦、对数等)。
5.5使用示例
- 进入
bc
交互式计算环境:
bc
进入后,可以直接输入数学表达式进行计算,例如:
3 + 5
要退出 bc
,可以输入 quit
或按 Ctrl-D
。
- 使用数学库进行高级运算:
bc -l
例如,计算正弦函数:
s(1)
- 在命令行中直接进行简单计算:
echo "3 + 5" | bc
- 设置小数点精度:
echo "scale=2; 10/3" | bc
bc
指令是一个功能强大的命令行计算工具,适用于各种数学计算需求。从基本的算术运算到复杂的数学函数,bc
都能提供高效和精确的计算能力。掌握 bc
指令的使用,可以方便地进行日常计算和复杂数学运算。
6.uname -r指令
6.1概述
uname
指令用于显示系统信息,而 uname -r
是其中的一个选项,专门用于显示当前正在运行的Linux内核版本。了解内核版本在进行系统管理和排除故障时非常有用。
6.2功能
- 显示当前运行的Linux内核版本。
6.3语法
uname -r
6.4使用示例
- 显示当前Linux内核版本:
uname -r
示例输出:
5.4.0-74-generic
此输出表示系统正在运行的内核版本是 5.4.0-74-generic
。
uname -r
指令是一个简单但非常有用的命令,特别是在需要了解系统内核版本以进行相应的系统配置、安装驱动程序或进行故障排除时。了解和掌握 uname -r
的使用方法,有助于更好地管理和维护Linux系统。
7.重要的几个热键[Tab],[ctrl]-c, [ctrl]-d
在使用Linux终端时,熟练掌握一些热键可以大大提高工作效率。以下是几个非常重要的热键:[Tab]、[Ctrl]-C、[Ctrl]-D。
7.1[Tab]键
7.1.1功能
- 自动补全命令或文件名。
7.1.2使用方法
- 输入命令或文件名的前几个字符,然后按 [Tab] 键。
- 如果有多个匹配项,按 [Tab] 键两次将显示所有匹配的选项。
7.1.3示例
- 输入
ls /etc/pass
然后按 [Tab],会自动补全为ls /etc/passwd
。
7.2[Ctrl]-C
7.2.1功能
- 终止当前运行的命令。
7.2.2使用方法
- 当一个命令正在执行且需要强制终止时,按 [Ctrl] 和
C
键同时按下。
7.2.3示例
- 当一个命令(如
ping www.example.com
)正在运行且不想继续运行时,按 [Ctrl]-C 终止该命令。
7.3[Ctrl]-D
7.3.1功能
- 结束输入,通常用于退出终端或某些交互模式。
7.3.2使用方法
- 在终端提示符下按 [Ctrl] 和
D
键同时按下。 - 在某些交互式命令(如
bc
或python
解释器)下使用也可以退出这些环境。
7.3.3示例
- 在终端中输入
exit
或按 [Ctrl]-D 退出当前终端会话。 - 在
bc
计算器或python
解释器中,按 [Ctrl]-D 退出交互式环境。
8.关机指令
在Linux系统中,有多种关机指令可供使用,具体取决于需要立即关机、重启、还是安排延时关机。了解这些指令可以帮助用户正确地关闭系统,避免数据丢失或损坏。
8.1 shutdown
shutdown
指令可以用于安排系统关机、重启,并允许指定时间。其基本语法如下:
shutdown [选项] [时间] [消息]
-h
:关闭系统。-r
:重启系统。-c
:取消一个正在进行的关机过程。now
:立即执行关机或重启。
示例
- 立即关机:
sudo shutdown -h now
- 5分钟后关机:
sudo shutdown -h +5
- 重启系统:
sudo shutdown -r now
- 取消已安排的关机:
sudo shutdown -c
8.2 reboot
reboot
指令用于立即重启系统。其基本语法如下:
reboot
示例
- 立即重启系统:
sudo reboot
8.3 halt
halt
指令用于立即停止系统。其基本语法如下:
halt
示例
- 立即停止系统:
sudo halt
8.4 poweroff
poweroff
指令用于关闭系统电源。其基本语法如下:
poweroff
示例
- 立即关闭系统电源:
sudo poweroff
掌握这些关机指令,用户可以根据具体需求选择合适的方法来关闭或重启系统,确保系统安全和数据完整。通过正确使用这些指令,可以有效地管理和维护Linux系统的运行状态。
9.小结
通过本节的学习,我们掌握了 find
、grep
、zip/unzip
、tar
、bc
、uname -r
等一系列常用的Linux指令,并了解了几个重要的热键和关机指令。这些指令将进一步提升我们在Linux系统中的操作效率和便利性。希望大家通过实践不断加深对这些指令的理解和应用。