• 【Linux系统编程】第五弹---基本指令(三)


    个人主页: 熬夜学编程的小林

    💗系列专栏: 【C语言详解】 【数据结构详解】【C++详解】【Linux系统编程】

    目录

    1、grep指令

    2、zip/unzip指令

    3、tar指令

    4、bc指令

    5、uname指令

    6、重要的几个热键

    7、拓展指令

    总结


    1、grep指令

    grep参考文档icon-default.png?t=N7T8https://www.cnblogs.com/ggjucheng/archive/2013/01/13/2856896.html
    语法:

    grep [选项] 搜寻字符串 文件名


    功能:

    在文件中搜索字符串,将找到的行打印出来


    常用选项:

    -i :忽略大小写的不同,所以大小写视为相同
    -n :顺便输出行号
    -v :反向选择,亦即显示出没有 '搜寻字符串' 内容的那一行


    2、zip/unzip指令

    1.zip


    语法:

    zip  [选项]  压缩文件.zip 目录或文件


    功能:

    将目录或文件压缩成zip格式


    常用选项:

    -r  递归处理,将指定目录下的所有文件和子目录一并处理

    2.unzip

    语法:

    unzip [选项] 要压缩的文件.zip [-x 需要排除的文件] [-d 需要解压到的目录]  (默认压缩至当前目录)


    功能:

    将.zip的压缩文件解压缩,如果已有相同的文件存在,要求unzip命令覆盖原先的文件

    下图为基本的压缩文件和解压缩文件详细过程:


     

    3、tar指令

    语法:

    1.压缩

    tar [选项] 目标文件名 源文件

    2.解压缩

    tar [选项] 待解压缩文件名 [-C 需要解压到的目录]

    注意:

    默认解压时在当前目录,如果要指定目录的话,则加上[-C 目录] 参数
     

    功能:

    打包/解包,不打开它,直接看内容


    常用选项:

    -c :建立一个压缩文件的参数指令(create 的意思);
    -x :解开一个压缩文件的参数指令!
    -t :查看 tarfile 里面的文件!
    -z :是否同时具有 gzip 的属性?亦即是否需要用 gzip 压缩?
    -j :是否同时具有 bzip2 的属性?亦即是否需要用 bzip2 压缩?
    -v :压缩的过程中显示文件!这个常用,但不建议用在背景执行过程!
    -f :使用档名,请留意,在 f 之后要立即接档名喔!不要再加参数!
    -C : 解压到指定目录

    1.打包成tar

    当有多个参数时,-f命令参数必须在最后一个,否则会报错,原因是 -f后面跟的是目标文件名称,如果-fc,则会把c当做源文件名称。

    1. [root@VMCentos7 test]# touch 1.c 2.c 3.c //创建三个文件,用于压缩
    2. [root@VMCentos7 test]# ls //查看当前目录的文件
    3. 1.c 2.c 3.c
    4. [root@VMCentos7 test]# tar -cvf test.tar 1.c 2.c 3.c //将三个后缀为.c的文件压缩到test.tar目录,没有目录则会自动创建
    5. 1.c
    6. 2.c
    7. 3.c
    8. [root@VMCentos7 test]# ls //查看当前目录下的文件和文件夹
    9. 1.c 2.c 3.c test.tar
    10. [root@VMCentos7 test]# rm ?.c //为了看到解压缩的效果,需要先把开始的三个文件删掉
    11. rm: remove regular empty file '1.c'? y
    12. rm: remove regular empty file '2.c'? y
    13. rm: remove regular empty file '3.c'? y
    14. [root@VMCentos7 test]# tar -xvf test.tar //test.tar文件解压缩到当前目录
    15. 1.c
    16. 2.c
    17. 3.c
    18. [root@VMCentos7 test]# ls //查看当前目录文件和文件夹
    19. 1.c 2.c 3.c test.tar
    • -c是表示打包,create 缩写
    • -v表示显示打包的过程,verbose 缩写
    • -f指定打包后的文件名,file缩写

    2.解压文件tar

    1. [root@VMCentos7 test]# ls //查看当前目录的的文件和文件夹
    2. 1.c 2.c 3.c test.tar
    3. [root@VMCentos7 test]# mkdir dir //先创建一个存放文件的目录
    4. [root@VMCentos7 test]# tar -xvf test.tar -C dir //test.tar目录解压缩到dir文件
    5. 1.c
    6. 2.c
    7. 3.c
    8. [root@VMCentos7 test]# tree dir //查看dir目录的结构
    9. dir
    10. ├── 1.c
    11. ├── 2.c
    12. └── 3.c
    13. 0 directories, 3 files
    • -x是表示还原一般和 -c 命令必须同时存在一个
    • -v表示显示打包的过程,verbose 缩写
    • -f指定打包后的文件名,file缩写

    注意:-C选项后的文件夹必须先创建好,否则会报如下错误。

    1. tar: Dir: Cannot open: No such file or directory
    2. tar: Error is not recoverable: exiting now

    3.打包并压缩tgz(或者tar.gz)

    1. [root@VMCentos7 test]# tar -zcvf test0.tgz 1.c 2.c 3.c # 将三个文件以gzip方式打包压缩
    2. 1.c
    3. 2.c
    4. 3.c
    5. [root@VMCentos7 test]# ls # 查看当前目录文件
    6. 1.c 2.c 3.c dir test0.tgz test1.tgz test.tar test.tgz

    4.解压并解包文件tgz(或者tar.gz)

    1. [root@VMCentos7 test]# mkdir zDir
    2. [root@VMCentos7 test]# tar -zxvf test0.tgz -C zDir # 解压缩到zDir文件夹中
    3. 1.c
    4. 2.c
    5. 3.c
    6. [root@VMCentos7 test]# tree zDir # 查看zDir文件夹结构
    7. zDir
    8. ├── 1.c
    9. ├── 2.c
    10. └── 3.c
    11. 0 directories, 3 files

    单独打包和打包并压缩的主要区别就是存储方式不同。 

    4、bc指令

    语法:

    bc [选项]  [计算任务的文件]


    功能:

    进行算术操作精密运算的工具。bc命令也是一种支持任意精度的交互执行的计算器语言。

    选项:

    -i:强制进入交互式模式

    -l:定义使用的标准数学库

    -w:对POSIX bc的扩展给出警告信息

    -q:不显示bc环境信息,直接运行命令

     -v:显示指令版本信息

     -h:显示指令的帮助信息

    1. [root@VMCentos7 test]# bc -q # 不显示环境信息进行计算
    2. 1.21*1.21
    3. 1.46
    4. scale=3 # 设置精度为3为小数
    5. 1.21*1.21
    6. 1.464

    补充一个在线查询Linux命令网站:

    在线Linux命令查询工具icon-default.png?t=N7T8https://www.lzltool.com/LinuxCommand


    5、uname指令


    语法:

    uname [选项]


    功能:

    uname用来获取电脑和操作系统的相关信息。


    补充:

    uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。


    常用选项: 


    -a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称

    -r:显示内核版本

    1. [root@VMCentos7 test]# uname -a
    2. Linux VMCentos7 5.10.134-16.1.al8.x86_64 #1 SMP Thu Dec 7 14:11:24 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
    3. [root@VMCentos7 test]# uname -r
    4. 5.10.134-16.1.al8.x86_64


    6、重要的几个热键

    [Tab]按键---具有『命令补全』和『档案补齐』的功能
    [Ctrl]-c按键---让当前的程序『停掉』
    [Ctrl]-d按键---通常代表着:『键盘输入结束(End Of File, EOF 戒 End OfInput)』的意思;另外,他也可以用来取代exit

    7、拓展指令


    shutdown指令:关机


    语法:

    shutdown [选项] 

    常见选项: 

    -r: 重启计算机

    -h: 关闭系统后关闭电源

    -c: 取消已经计划的 shutdown 操作

     -t sec : -t 后面加秒数,即过几秒后关机


    扩展命令

    ◆ 安装和登录命令: login、 shutdown、 halt、 reboot、 install、 mount、 umount、 chsh、 exit、 last;
    ◆ 文件处理命令: file、 mkdir、 grep、 dd、 find、 mv、 ls、 diff、 cat、 ln;
    ◆ 系统管理相关命令: df、 top、 free、 quota、 at、 lp、 adduser、 groupadd、 kill、 crontab;
    ◆ 网络操作命令: ifconfig、 ip、 ping、 netstat、 telnet、 ftp、 route、 rlogin、 rcp、 finger、 mail、 nslookup;
    ◆ 系统安全相关命令: passwd、 su、 umask、 chgrp、 chmod、 chown、 chattr、 sudo ps、 who;
    ◆ 其它命令: tar、 unzip、 gunzip、 unarj、 mtools、 man、 unendcode、 uudecode。

    总结


    本篇博客就结束啦,谢谢大家的观看,如果公主少年们有好的建议可以留言喔,谢谢大家啦!

  • 相关阅读:
    三维模型文件以及obj、ply格式文件生成pcd点云文件
    【Android】【Compose】Compose里面的Row和Column的简单使用
    OpenAI CLIP 关键点 - 连接图像和文字
    Python期末复习题:流程控制
    VSCode 配置 C++ 环境
    基于C#、Visual Studio 2017以及.NET Framework 4.5的Log4Net使用教程
    YOLOv5全面解析教程②:如何制作训练效果更好的数据集
    代码优雅之道——断言 + Springboot统一异常处理
    MySQL——排序查询
    JNI技术解析
  • 原文地址:https://blog.csdn.net/2201_75584283/article/details/136892649