Linux的基本指令(五)

目录

前言

tar指令(重要)

再次思考,为什么要打包和压缩呢?

实例:基于xshell进行压缩包在Windows与Linux之间的互传

实例:实现两个Linux系统之间的文件互传

bc指令

uname -r指令

重要的热键

关机与开机

扩展命令

shell及运行原理

学前补充:

什么是shell命令?

什么是外壳程序?

为什么要有外壳程序


前言

Linux的基本指令(一):http://t.csdnimg.cn/seONV

Linux的基本指令(二):http://t.csdnimg.cn/oMkUa

Linux的基本指令(三):http://t.csdnimg.cn/fo6XY

Linux的基本指令(四):http://t.csdnimg.cn/Kb3U5

tar指令(重要)

语法:tar [选项] 自定义压缩包名包括后缀 要压缩的文件/目录名 ......

功能:打包和压缩,不打开它,直接看内容

常用选项:

  • -c :建立一个压缩文件的参数指令(create 的意思);(小写c)
  • -x :解开一个压缩文件的参数指令!
  • -t :查看 tarfile 里面的文件!
  • -z :压缩为有gzip属性的压缩包
  • -j :压缩为有bzip2属性的压缩包
  • -v :压缩的过程中显示文件(常用)
  • -f :新形成的压缩包的文件名,f后应直接跟该压缩包的文件名
  • -C : 解压到指定目录(大写C)

常见使用方式:

1、tar -czf 自定义压缩包名包括后缀 要压缩的文件/目录名,将文件/目录压缩至该压缩包:

可以写多个要压缩的文件/目录名,从而实现多文件/目录的压缩

2、tar -cvzf 自定义压缩包名包括后缀 要压缩的文件/目录名,将要压缩的文件递归显示:

3、tar -xvzf 要解压缩的文件,解压缩的同时将解压的文件递归显示:

4、tar -xvzf 要解压缩的文件 -C 指定目录,解压缩至指定目录的同时将解压的文件显示:

再次思考,为什么要打包和压缩呢?

答:便于文件在网络之间的传输

实例:基于xshell进行压缩包在Windows与Linux之间的互传

1、利用指令在dir目录下创建了一百个文件:

i=0; while [ $i -le 100 ]; do touch file${i}.txt; let i++; done

2、将dir目录压缩为dir.tgz文件,再利用sz指令将该压缩文件传递至Windows桌面

3、利用rz指令将Window中的压缩包传递给Linux(直接输入rz即可选择):

实例:实现两个Linux系统之间的文件互传

1、打开两个Linux操作系统的云服务器(哥们刚好开了腾讯和阿里的两个云服务器)

2、利用指令将左边的云服务器中的dir.tgz文件传递给右边的云服务器

scp 要传输的压缩包 本地用户名@另一台Linux机器的公网ip:要拷贝至该Linux机器的路径
scp dir.tgz root@47.113.150.14:/root


bc指令

语法:直接使用

功能:可以进行很方便的浮点运算

注意事项:如果没有该指令则需要使用指令下载

yum -y install bc

常见使用方式:

1、直接输入bc开始进行计算:

2、echo 要计算的内容 | bc,将要计算的内容直接交给bc计算:


uname -r指令

语法:uname [选项]

功能:获取电脑和操作系统的相关信息

常用选项:

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

常见使用方式:

1、uname -a,查看当前操作系统的基本信息:

下面是Chat GPT对该条基本信息的分析操作(简单了解):

这段代码提供了一些关于操作系统和计算机硬件的信息,以及正在运行的 Linux 内核版本。让我们逐个分析它们的意义:

- `Linux`: 表示当前操作系统是 Linux。
- `VM-16-17-centos`: 这可能是虚拟机或物理计算机的名称或标识符。它通常用于区分不同的主机或环境。
- `3.10.0-1160.99.1.el7.x86_64`: 这是内核版本号,指示正在运行的 Linux 内核版本。具体来说,这里显示了内核版本为 3.10.0,并且构建号为 1160.99.1.el7.x86_64。
   - `3` 表示主要版本号,表示较大规模更改。
   - `10` 是次要版本号,在此处表示一些新功能、修复和改进已添加到内核中。
   - `0` 是补丁级别(Patch level),用于指定对该次要版本进行错误修复和安全更新时所应用的特定级别。

接下来是日期时间信息:
- `Wed Sep 13 14:19:20 UTC 2023`:表示生成该内核映像文件(Kernel Image)时使用了此日期和时间戳。

最后一部分描述了硬件架构:
- `x86_64 x86_64 x86_64 GNU/Linux`
    - 第一个 "x86_64" 指明了计算机的处理器架构,这是指支持 64 位 x86 指令集的处理器(通常称为 "x86_64" 或 "AMD64")。
    - 第二个和第三个 "x86_64" 表示操作系统和用户空间程序也是针对相同的 64 位 x86 架构编译的。
    - `GNU/Linux` 指明了这是一个基于 GNU 工具链并运行 Linux 内核的操作系统。

综上所述,该代码提供了关于正在运行的 Linux 系统、内核版本、生成日期时间以及硬件架构等信息。它可以用于标识和调试特定环境,并帮助确定适合该环境特性和要求的软件配置。


重要的热键

1、[Tab]按键---具有『命令补全』和『档案补齐』的功能

输入wh后再按下Tab键可以将以wh开头的指令展示出来: 

2、[Ctrl]-c按键---让当前的程序『停掉』

当陷入一段非常长的循环时比如tree /,可以使用CTRL + C 强制退出该循环:

tree /

3、[Ctrl]-d按键---退出登录当前账户,也可以用来取代exit

输入CTRL+D,退出当前登录的账户


关机与开机

语法shutdown [选项] 一些参数
常用选项:
  • -h : 将系统的服务停掉后,立即关机。
  • -r : 在将系统的服务停掉之后就重新启动
  • -t sec -t 后面加秒数,亦即『过几秒后关机』的意思
注意事项:
1、云服务器不建议使用关机选项一旦关机需要在对应的云服务器官网上重启
2、VM虚拟机可以进行关机与开机操作
3、执行开机与关机指令可能需要管理员权限(root 或 sudo)
常见使用方式:

1、shutdown now:立即关机

2、shutdown -h now:立即关机并停止电源

3、shutdown -h +5:在当前时间后的 5 分钟内进行机(倒计时)

4、shutdown -h 20:00:在指定时间(24 小时制)进行关机

5、shutdown -r now:立即重启系统

6、shutdown -reboot now:立即重启系统

7、shutdown --cancel:取消已计划的关机或重启

扩展命令

  • 安装和登录命令loginshutdownhaltrebootinstallmountumountchshexitlast
  • 文件处理命令:filemkdirgrepddfindmvlsdiffcatln
  • 系统管理相关命令dftopfreequotaatlpaddusergroupaddkillcrontab
  • 网络操作命令ifconfigippingnetstattelnetftprouterloginrcpfingermail nslookup
  • 系统安全相关命令:passwdsuumaskchgrpchmodchownchattrsudo pswho
  • 其它命令:tarunzipgunzipunarjmtoolsmanunendcodeuudecode

shell及运行原理

学前补充:

1、大部分指令都是文件

 2、用户在执行某种功能时,不是直接让操作系统执行对应的指令,而是先交给外壳程序

3、外壳程序包含很多种,其中bash就是一种具体的外壳程序 

什么是shell命令?

        Shell 在计算机科学中通常指的是命令行解释器或外壳程序。它提供了一种交互式方式,让用户能够输入和执行命令,并与操作系统进行交互。

        "Shell 命令" 是指在 Shell 解释器中可执行的命令。这些命令由 Shell 解释器解析和执行,并且可以完成各种任务,如文件操作(mkdir)、显示信息(ls)、环境变量设置等。

        因此,在日常使用中,“Shell 命令” 这个术语通常用于描述用户通过 Shell 解释器输入并执行的特定指令或操作。这些命令可以是内置于 Shell 中的预定义功能(如 `cd`、`ls`),也可以是自定义脚本或可执行文件。

        总之,尽管 "Shell" 一词原本表示一个外壳程序或解释器,但在实际使用时,“Shell 命令” 指代用户通过该解释器运行的特定指示和操作。

什么是外壳程序?

外壳程序是介于用户和操作系统之间的软件(命令行解释器、图形化界面等)

为什么要有外壳程序

1、便于用户与操作系统之间的交互:
小故事:
小帅(用户)害羞不敢跟如花(操作系统)表白,请媒人王婆(bash)帮忙询问(用户发出的指令),媒人王婆(bash)询问如花(操作系统)是否愿意,如花(操纵系统)说不愿意(报错),媒人王婆(bash)给小帅(用户)转达如花(操作系统)不同意的意思(用户的指令执行失败)

2、可以对用户请求进行合法性检测,变相的保护操作系统:
小故事续集:
小帅(用户一)心有不甘,还想要王婆帮忙询问(用户一发出的指令),但是媒人王婆(bash)再次上门询问(用户一发出的指令)时发现跟如花(操作系统)私定终生的大帅(用户二)已经被如花接受了(用户二发出的指令)俩人已经准备结婚了🤡,于是媒人王婆(bash)就会回去告诉小帅(用户一)你俩不可能(用户一的指令执行失败),同时当村子里的其它人(其他用户)问起(其他用户发出的指令)媒人王婆(bash)时,因为已经知道了这些人(其他用户)根本不可能(其他用户发出的指令无法执行)所以媒人王婆(bash)就不需要再去询问(其他用户发出的指令)如花(操作系统)的意见,直接拒绝了这些人(其它用户),同样的也保护了如花和大帅之间的感情(用户二发出的指令可以正常执行)

可小帅的父亲是村长,碍于村长的面子王婆既不想帮了但还必须得帮,王婆该如何做呢? 

答案:招聘实习生(创建子进程)

        媒人王婆(bash)用招来(bash会创建一个子进程)的实习生(子进程)帮助小帅(用户)解决相亲的问题(帮用户进行命令行解释),这样她自己就可以置身事外了(bash只需要等待子进程运行的结果即可),起码不用自己上场了办不好也可以推给实习生(子进程执行的失败结果并不会影响主进程)......

bash和shell的区别:shell是所有外壳程序的统称(媒人),bash是具体的一款外壳程序(王婆)、sh是具体的另一款外壳程序(李婆)

~over~

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

国际语音群呼系统的产品优势有哪些?为什么要使用国际语音群呼系统?

一、国际语音群呼系统的产品优势: 1.巨量群呼 支持大容量并发群呼,呼叫不受限制,充裕的线路保障造就百万级平台容量,可以短时间内同时拨打大量电话,让语音快速到达,大大提高发送效率; 2.自主…

WSL2 Linux22.04 图形化界面配置

Windows10/11 三步安装wsl2 Ubuntu20.04(任意盘) - 知乎 22.04需要将appxbundle改后缀名为zip,选出x64解压再改后缀名,再按上面文章操作 ubuntu 22.04国内镜像阿里云/163源/清华大学/中科大 WSL2 Ubuntugnome图形界面的安装血泪史&#xf…

Android12蓝牙框架

参考: https://evilpan.com/2021/07/11/android-bt/ https://source.android.com/docs/core/connect/bluetooth?hlzh-cn https://developer.android.com/guide/topics/connectivity/bluetooth?hlzh-cn https://developer.android.com/guide/components/intents-fi…

FL Studio Producer Edition21.0.3中文版安装详解(附下载链接)

fl studio 21中文版是Image-Line公司继20版本之后更新的水果音乐制作软件,很多用户不太理解,为什么新版本不叫fl studio 21或fl studio2024,非得直接跳到21.2版本,其实该版本是为了纪念该公司22周年,所以该版本也是推出…

点云从入门到精通技术详解100篇-基于三维点云的工件曲面轮廓检测与机器人打磨轨迹规划(下)

目录 4.3 机器人打磨轨迹规划 4.3.1 机器人运动学建模与分析 4.3.2 机器人轨迹规划算法

C++生成静态库和动态库

什么是静态库和动态库 在项目开发中,或多或少地需要使用到第三方(非编译器提供)的程序库,使用第三方的程序库能够减少重复造轮子的工作,提高开发效率。本文将介绍如何把自己的写的程序制作为程序库提供给他人使用&…

Android 13 - Media框架(18)- CodecBase

从这一节开始我们会回到上层来看ACodec的实现,在这之前我们会先了解ACodec的基类CodecBase。CodecBase.h 中除了声明有自身接口外,还定义有内部类 CodecCallback、BufferCallback,以及另一个基类 BufferChannelBase,接下来我们会一…

mysql基本命令

MySQL 是一个流行的关系型数据库管理系统,以下是一些常用的 MySQL 基本命令: 连接到 MySQL 服务器: mysql -u [username] -p [password]其中 [username] 是你的 MySQL 用户名,[password] 是对应的密码。执行该命令后&#xff0c…

使用gcloud SDK 管理和部署 Cloud run service

查看cloud run 上的service 列表: gcloud run services list > gcloud run services listSERVICE REGION URL LAST DEPLOYED BY LAST DEPL…

小米秒享3--非小米电脑

小米妙享中心是小米最新推出的一款功能,能够为用户们提供更加舒适便利的操作体验。简单的说可以让你的笔记本和你的小米手机联动,比如你在手机的文档,连接小米共享后,可以通过电脑进行操作。 对于非小米电脑想要体验终版秒享AIOT…

使用java批量生成Xshell session(*.xsh)文件

背景 工作中需要管理多套环境, 有时需要同时登陆多个节点, 且每个环境用户名密码都一样, 因此需要一个方案来解决动态的批量登录问题. XShell Xshell有session管理功能: 提供了包括记住登录主机、用户名、密码及登录时执行命令或脚本(js,py,vbs)的功能 session被存储在xsh文…

计算机组成学习-数据的表示和运算总结

1、进制与编码 1.1 进位计数法 常用的进位计数法有十进制、二进制、八进制、十六进制等。十六进制每个 数位可取0〜9、A、B、C、D、E、F中的任意一个,其中A、B、C、D、E、F分别表示 10〜15。 八进制数字通常以前缀 "0"(零)加上数…

C++串口通信(转载)

Windows串口读取 要使用 C 读取串口数据&#xff0c;你需要使用串口编程库。在 Windows 平台上&#xff0c;可以使用 WinAPI 提供的串口编程接口。以下是一个简单的示例程序&#xff0c;用于打开 COM1 串口端口&#xff0c;读取数据并输出到控制台&#xff1a; #include <…

GoLong的学习之路,进阶,RabbitMQ (消息队列)

快有一周没有写博客了。前面几天正在做项目。正好&#xff0c;项目中需要MQ&#xff08;消息队列&#xff09;&#xff0c;这里我就补充一下我对mq的理解。其实在学习java中的时候&#xff0c;自己也仿照RabbitMQ自己实现了一个单机的mq&#xff0c;但是mq其中一个特点也就是&a…

基于ResNet18网络完成图像分类任务

目录 1 数据处理 1.1 数据集介绍 1.2 数据读取 1.3 构造Dataset类 2 模型构建 3 模型训练 4 模型评价 5 模型预测 6 什么是预训练模型和迁移学习 7 比较“使用预训练模型”和“不使用预训练模型”的效果。 总结 在本实践中&#xff0c;我们实践一个更通用的图像分类任务…

rust-flexi_logger

flexi_logger 是字节开源的rust日志库。目前有log4rs、env_log 等库&#xff0c;综合比较下来&#xff0c;还是flexi_logger简单容易上手&#xff0c;而且自定义很方便&#xff0c;以及在效率方面感觉也会高&#xff0c;下篇文章我们来测试下。 下面来看下怎么使用 关注 vx gol…

探索未来能源:可控核聚变的挑战与希望

探索未来能源:可控核聚变的挑战与希望 引言 随着人类社会的不断发展,对能源的需求也在持续增长。传统的化石燃料能源在燃烧过程中会产生大量的二氧化碳和其他温室气体,导致全球气候变暖,对环境产生了重大威胁。因此,寻找一种清洁、可持续、高效的能源成为了当务之急。在…

目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】单目视觉估计

目录 前言 算法原理 单目3D目标检测新网络 GUP module以及HTL 单目深度估计 数据集介绍 2.1 KITTI

Redis hash表源码解析

整体数据结构&#xff1a;链式hash解决hash冲突、采用渐进式hash来完成扩容过程。 /** 哈希表节点*/ typedef struct dictEntry {// 键void *key;// 值union {void *val;uint64_t u64;int64_t s64;} v;// 指向下个哈希表节点&#xff0c;形成链表struct dictEntry *next;} dict…

ubuntu22.04离线手动安装openstack yoga和ceph quincy

目录 写在前面材料准备一. OpenStack部1. 创建虚拟网络和虚拟机2. 配置离线环境3. 环境准备3.1 配置网络3.2 配置主机名并配置解析3.3 时间调整3.4 安装openstack客户端3.5 安装部署MariaDB3.6 安装部署RabbitMQ控制节点操作3.7 安装部署Memcache控制节点操作 4. 部署配置keyst…