Linux基本指令(二)

目录

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指令,包括 lspwdcdtouchmkdirrmdirrmmancpmvcat。本节将继续深入学习更多常用的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概述

zipunzip 指令用于压缩和解压缩文件,是处理文件归档和压缩的常用工具。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.txtfile2.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

zipunzip 是管理压缩文件的基本工具,支持广泛的选项和用法,可以方便地创建和解压缩 .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使用方法

  1. 输入命令或文件名的前几个字符,然后按 [Tab] 键。
  2. 如果有多个匹配项,按 [Tab] 键两次将显示所有匹配的选项。

7.1.3示例

  • 输入 ls /etc/pass 然后按 [Tab],会自动补全为 ls /etc/passwd

7.2[Ctrl]-C

7.2.1功能

  • 终止当前运行的命令。

7.2.2使用方法

  1. 当一个命令正在执行且需要强制终止时,按 [Ctrl] 和 C 键同时按下。

7.2.3示例

  • 当一个命令(如 ping www.example.com)正在运行且不想继续运行时,按 [Ctrl]-C 终止该命令。

7.3[Ctrl]-D

7.3.1功能

  • 结束输入,通常用于退出终端或某些交互模式。

7.3.2使用方法

  1. 在终端提示符下按 [Ctrl] 和 D 键同时按下。
  2. 在某些交互式命令(如 bcpython 解释器)下使用也可以退出这些环境。

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.小结

通过本节的学习,我们掌握了 findgrepzip/unziptarbcuname -r 等一系列常用的Linux指令,并了解了几个重要的热键和关机指令。这些指令将进一步提升我们在Linux系统中的操作效率和便利性。希望大家通过实践不断加深对这些指令的理解和应用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值