【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当做源文件名称。

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

2.解压文件tar

[root@VMCentos7 test]# ls //查看当前目录的的文件和文件夹
1.c  2.c  3.c  test.tar
[root@VMCentos7 test]# mkdir dir  //先创建一个存放文件的目录
[root@VMCentos7 test]# tar -xvf test.tar -C dir  //将test.tar目录解压缩到dir文件
1.c
2.c
3.c
[root@VMCentos7 test]# tree dir //查看dir目录的结构
dir
├── 1.c
├── 2.c
└── 3.c

0 directories, 3 files
  • -x是表示还原一般和 -c 命令必须同时存在一个
  • -v表示显示打包的过程,verbose 缩写
  • -f指定打包后的文件名,file缩写

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

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

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

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

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

[root@VMCentos7 test]# mkdir zDir
[root@VMCentos7 test]# tar -zxvf test0.tgz -C zDir # 解压缩到zDir文件夹中
1.c
2.c
3.c
[root@VMCentos7 test]# tree zDir # 查看zDir文件夹结构
zDir
├── 1.c
├── 2.c
└── 3.c

0 directories, 3 files

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

4、bc指令

语法:

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


功能:

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

选项:

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

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

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

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

 -v:显示指令版本信息

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

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

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

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


5、uname指令


语法:

uname [选项]


功能:

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


补充:

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


常用选项: 


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

-r:显示内核版本

[root@VMCentos7 test]# uname -a
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
[root@VMCentos7 test]# uname -r
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。

总结


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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/554214.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

HTML学习笔记:链接target属性

关于target的使用&#xff1a; <a href"https://www.baidu.com" target"_parent">网址链接</a>其中关于target四个特殊目标的理解&#xff0c;W3school上的解释为&#xff1a; HTML 标签的 target 属性 其中_black和_self两个属性很好理解&…

谷粒商城part2——环境篇

这里是过来人的学习建议&#xff1a; 1、如有条件电脑内存至少16G起步&#xff0c;条件进一步加个屏幕&#xff0c;条件更进一步租一台至少4G内存的X86架构云服务器&#xff0c;所有部署的东西全扔云服务器上 2、P16&#xff0c;P17没法搭起来的建议照着rerenfast的github上的教…

一文了解OCI标准、runC、docker、contianerd、CRI的关系

docker和contanerd都是流行的容器运行时&#xff08;container runtime&#xff09;&#xff1b;想讲清楚他们两之间的关系&#xff0c;让我们先从runC和OCI规范说起。 一、OCI标准和runC 1、OCI&#xff08;open container initiative&#xff09; OCI是容器标准化组织为了…

数字化实践案例丨捷安高科项目管理系统打造项目与业务双联动

30秒快读 为了解决郑州捷安高科股份有限公司&#xff08;简称&#xff1a;捷安高科&#xff09;公司规模化和业务扩展进程中带来的系列管理痛点&#xff0c;如项目的成本收益不透明、跨部门协调困难、人力资源配置和投入产出不清晰等&#xff0c;捷安高科启动了项目管理系统建设…

【Pytorch】Conv1d

conv1d 先看看官方文档 再来个简单的例子 import torch import numpy as np import torch.nn as nndata np.arange(1, 13).reshape([1, 4, 3]) data torch.tensor(data, dtypetorch.float) print("[data]:\n", data) conv nn.Conv1d(in_channels4, out_channels1…

常见面试算法题-数组二叉数

■ 题目描述 【数组二叉树】 二叉树也可以用数组来存储&#xff0c;给定一个数组&#xff0c;树的根节点的值存储在下标1&#xff0c;对于存储在下标N的节点&#xff0c;它的左子节点和右子节点分别存储在下标2*N和2*N1&#xff0c;并且我们用值-1代表一个节点为空。 给定一…

Interpretable3D:一种用于3D点云的即时可解释分类器

Interpretable3D&#xff1a;一种用于3D点云的即时可解释分类器 paper github

【病毒分析】phobos家族2700变种加密器分析报告

1.样本信息 ⽂件名Fast.exeSHA2563c95bd8e14f6aa92e94ec3318d23a8cc34192259MD528c6c0b4f54912ec73c9bfeb3f2a8f07运行平台Windows 2.感染迹象 2.1 文件结构分析 整体文件大小为200k,把冗余数据去掉,发现仍然可以运行,大小变为56k。与phobos家族的标准一致。 2.1.1 勒索信 …

python笔记 | 哥德巴赫猜想

哥德巴赫猜想&#xff1a;每个不小于6的偶数都可以表示成两个素数之和。 素数&#xff1a;只能被1和自身整除的正整数。就是大于1且除了1和它本身之外没有其他因数的数。例如&#xff0c;2、3、5、7、11等都是素数&#xff0c;而4、6、8、9等则不是素数。 下面这段Python代码…

Day 16 Linux服务管理和日志管理

服务管理 启动服务&#xff1a;systemctl start 服务名 停止服务&#xff1a;systemctl stop 服务名 重启服务&#xff1a;systemctl restart 服务名 重新加载配置文件&#xff1a;systemctl reload 服务名&#xff08;期间并不停止服务进程&#xff09; 查看服务运行状态…

十、OOP面向对象程序设计(五)

1、什么是接口以及接口的运用 1)接口定义 Java接口(Interface),是一些列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能。) 2)接口定义的一般形式 修饰符:…

git使用(上传自己的项目到github上)

之前最早使用的方式是使用as上面的菜单功能VCS——>share project on github,,, 现在我们使用命令的方法上传。 第一步&#xff1a;在github上面Create a new repository 这里输入仓库的名称和描述&#xff0c;勾选Add a README file&#xff0c;这会在创建仓库的时候添加…

一些重新开始面试之后的八股文汇总

一、内存中各项名词说明 1、机器内存概念说明 linux中的free命令可以查看机器的内存使用情况&#xff0c;vmstat命令也可以 其中不容易被理解的是&#xff1a; 内存缓冲/存数&#xff08;buffer/cached&#xff09; 1.buffers和cache也是RAM划分出来的一部分地址空间 2.buff…

css div添加滚动条(附加源码)

问题描述 先看效果图。 每个商品通过后台接口查询出来&#xff0c;前端v-for进行显示&#xff0c;所以这块我要添加一个滚动条&#xff0c;我不确定有多少个商品。 解决方案 实现思路&#xff1a;div设置高度为1000rpx&#xff08;我这边是举例&#xff0c;根据实际场景去设…

Jenkins 流水线多阶段构建

Jenkins流水线配置遇到 无法识别的。需要使用 自定义环境 项。 比如官网的在流水线中使用Docker Started by remote host 172.17.0.1 Obtained Jenkinsfile from git http://10.99.20.51:8082/root/java-devops-demo.git org.codehaus.groovy.control.MultipleCompilationErro…

Ribbon 添加右侧区域菜单项

效果图如下所示&#xff1a; 类似与上图效果所示&#xff0c;代码如下&#xff1a; RibbonPage* pageHome1 ribbonBar()->addPage(tr("Home")); //实现代码&#xff1a; { QMenu* menuOptions ribbonBar()->addMenu(tr("Options"))…

节点加密技术:保障数据传输安全的新利器

随着信息技术的快速发展&#xff0c;网络数据的安全传输问题日益凸显。节点加密技术作为一种新兴的加密手段&#xff0c;正逐渐成为保障数据传输安全的重要工具。本文将探讨节点加密技术的原理、应用及其优势&#xff0c;并分析其未来的发展趋势。 节点加密技术的原理 节点加密…

腾讯InstantMesh30秒图片生成3D模型;微软实时生成会说话的头像VASA;由 AI 创作的恶搞视频片段Sitcom Simulator

✨ 1: InstantMesh 30 秒内从一张图片生成 3D 模型 InstantMesh是一个基于单张图片&#xff0c;利用先进的稀疏视图大型重建模型&#xff08;LRM&#xff09;架构&#xff0c;快速生成3D网格&#xff08;Mesh&#xff09;的工具。这个框架允许用户将2D图片转换成3D模型&#…

学习笔记------时序约束之时钟周期约束

本文摘自《VIVADO从此开始》高亚军 主时钟周期约束 主时钟&#xff0c;即从FPGA的全局时钟引脚进入的时钟或者由高速收发器输出的时钟。 对于时钟约束&#xff0c;有三个要素描述&#xff1a;时钟源&#xff0c;占空比和时钟周期。 单端时钟输入 这里我们新建一个工程&#x…

如何使用Flask搭建web程序框架并实现无公网IP远程访问本地程序

文章目录 前言1. 安装部署Flask并制作SayHello问答界面2. 安装Cpolar内网穿透3. 配置Flask的问答界面公网访问地址4. 公网远程访问Flask的问答界面 前言 Flask是一个Python编写的Web微框架&#xff0c;让我们可以使用Python语言快速实现一个网站或Web服务&#xff0c;本期教程…