SHELL编程(一)

目录

  • 一、 Linux操作系统
    • (一)内核与操作系统
    • (二)操作系统的功能
  • 二、Linux高级命令
    • (一) 离线安装 dpkg
      • 1. 安装
      • 2. 使用
      • 3. 查看安装详细信息
      • 4. 安装路径
      • 5. 不完全删除
      • 6. 完全删除
    • (二) 在线安装 apt-get
      • 1. 网络配置
      • 2. 软件仓库
      • 3. 更新apt-get的软件源
      • 4. 安装
      • 5. 删除
      • 6. 下载软件包但不安装
      • 7. 删除下载的软件包
      • 8. 常用软件
        • (1) 泡泡龙 frozen-bubble
        • (2)代码雨 cmatrix
    • (三)压缩文件
      • 1. gzip压缩:.gz
        • (1)压缩
        • (2)解压缩
      • 2. bzip2压缩:.bz2
        • (1)压缩
        • (2)解压缩
      • 3. xz压缩:.xz
        • (1)压缩
        • (2)解压缩
    • (四)归档tar
      • 1. 功能:
      • 2. 作用对象:目录
      • 3. 使用:
      • 4. 选项:
    • (五)查看文件
      • 1. cat命令
        • ① 功能:
        • ② 参数:
      • 2. head命令
        • ①功能:
        • ② 参数:
      • 3. tail命令
        • ①功能:
        • ② 参数:

一、 Linux操作系统

(一)内核与操作系统

内核:Linux Unix
操作系统:windows macos 安卓 redhat …

操作系统是在原有的内核之上添加了新的内容。

(二)操作系统的功能

  1. 内存管理
  2. 网络管理
  3. 进程管理
  4. 文件管理
  5. 驱动管理

二、Linux高级命令

(一) 离线安装 dpkg

Linux 离线安装包命名
sl _  5.02 - 1  _  amd64 .deb
sl:软件名
_ :间隔符
5.02:版本号
- :间隔符
1 :修订版本
amd64:64位操作系统;32:i386
deb:后缀,ubuntu的安装包;.rpm格式是redhat的安装包
  • 注:离线安装时需要手动安装软件需要依赖的文件

1. 安装

安装软件sudo dpkg -i 软件名称

2. 使用

man 软件名 //查看使用说明直接通过软件名调用

3. 查看安装详细信息

sudo dpkg -l 软件名
sudo dpkg -L 软件名  //详细安装信息,包括安装路径

在这里插入图片描述

4. 安装路径

可以将程序生成的可执行文件放到/usr/games中,可以不需要加上路径’./a.out’,可以直接使用’a.out’

5. 不完全删除

sudo dpkg -r 软件名
  • 注:会保留一些配置信息

6. 完全删除

sudo dpkg -p 软件名

(二) 在线安装 apt-get

  • 注:安装软件时会自动将软件需要的依赖安装完成
  • 在安装时需要计算机联网

1. 网络配置

配置网络:
① 关闭ubuntu的虚拟机
② vmware --> 编辑 --> 虚拟网络编辑器 --> 更改设置 --> 还原默认设置. --> nat模式 --> 确认
③ vmware --> 虚拟机 --> 设置 --> 网络适配器 --> NAT模式
④ 启动虚拟机
⑤ 如果虚拟机右上角没有出现网络连接符号,进行以下操作
在这里插入图片描述

     a. sudo service network-manager stopb. sudo rm  /var/lib/NetworkManager/NetworkManager.statec. sudo service network-manager start

2. 软件仓库

  1. 在左侧栏选择所有程序

  2. 选择软件更新器

  3. 在软件更新器中选择"设置"

  4. 更改设置
    在这里插入图片描述

  5. 关闭

  6. 验证配置是否成功
    在这里插入图片描述
    此时服务器已更换成了huaweicloud
    在这里插入图片描述

3. 更新apt-get的软件源

在这里插入图片描述

  • 注:建议每次使用前都进行apt-get的更新

4. 安装

sudo apt-get install 软件名

5. 删除

sudo apt-get remove 软件名

6. 下载软件包但不安装

sudo apt-get download 软件名

软件安装包位置:
/var/cache/apt/archives/

7. 删除下载的软件包

sudo apt-get clean

8. 常用软件

(1) 泡泡龙 frozen-bubble
sudo apt-get install frozen-bubble

在这里插入图片描述

(2)代码雨 cmatrix
sudo apt-get install cmatrix

在这里插入图片描述

(三)压缩文件

压缩操作的对象是文件(目录不可以)

1. gzip压缩:.gz

(1)压缩
gzip 文件名 

gzip file.c ⇒ file.c.gz

(2)解压缩
gunzip 文件名.gz 

gunzip file.c.gz ⇒ file.c

2. bzip2压缩:.bz2

(1)压缩
bzip2 filename 

实现:bzip2 file.c ⇒ file.c.bz2

(2)解压缩
bunzip2 filename.gz 

bunzip2 file.c.bz2 ⇒ file.c

3. xz压缩:.xz

(1)压缩
xz filename 

xz file.c ⇒ file.c.xz

(2)解压缩
unxz filename.xz 

unxz file.c.xz ⇒ file.c

  • 注:三种压缩方式的区别
    速率:gzip>bzip2>xz
    效果:xz>bzip2>gzip
  • 三种方式,原文件都会删除

(四)归档tar

1. 功能:

将目录归档为一个普通文件,归档后原目录不会删除

2. 作用对象:目录

3. 使用:

tar -cvf filename  //归档
tar -xvf filename.tar  //解归档
tar -zcvf filename  //归档并压缩为.tar.gz
tar -jcvf filename  //归档并压缩为.tar.bz2
tar -Jcvf filename  //归档并压缩为.tar.xz
tar -zxcvf filename  //解归档.tar.gz
tar -jxcvf filename  //解归档.tar.bz2
tar -Jxcvf filename  //解归档.tar.xztar -xvf filename  //自动选择解压方式

4. 选项:

-c :将文件进行归档
-x :将归档文件解归档
-v :显示细节
-f :文件名,一定要写在最后,文件名紧跟其后
附带选项:
-z :使用gzip进行压缩
-j :使用bzip2进行压缩
-J :使用xz进行压缩

(五)查看文件

1. cat命令

① 功能:

将文件内容显示到终端上

cat filename  
② 参数:

-n 显示行号

2. head命令

①功能:

显示文件的前n行内容到终端中,默认显示10行

head -参数 filename  
② 参数:

-<number> 将文件的前number行显示到终端
- n <number> 将文件的前number行显示到终端

3. tail命令

①功能:

显示文件的后n行的内容,默认显示10行

tail -参数 filename  
② 参数:

-<number> 将文件的后number行显示到终端
- n <number> 将文件的后number行显示到终端

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

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

相关文章

c++ visualstudio2017 opencv debug源码 windows配置

源码下载和cmake opencv源码和opencv-contribue文件夹的层级目录 在opencv-4.4.0中新建build文件夹&#xff0c;并启动cmake-gui 配置如下&#xff0c;使用vs2017 x64, 需要注意contrib文件夹的设置&#xff0c;如下方蓝色所示&#xff0c;依次点击Configure和Generate 在bu…

RuoYi-Vue-Plus (Logback 和 logback-plus.xml 、p6spy)

项目后本地日志 一、logback依赖 打开最外层的 pom.xml,查看 SpringBoot的依赖配置。 <dependencyManagement><dependencies><!-- SpringBoot的依赖配置--><dependency><groupId>org.springframework.boot</groupId><artifactId>s…

AutoNeRF:Training Implicit Scene Representations with Autonomous Agents

论文概述 《AutoNeRF》是由Pierre Marza等人撰写的一篇研究论文&#xff0c;旨在通过自主智能体收集数据来训练隐式场景表示&#xff08;如神经辐射场&#xff0c;NeRF&#xff09;。传统的NeRF训练通常需要人为的数据收集&#xff0c;而AutoNeRF则提出了一种使用自主智能体高效…

OpenAI 推出 GPT-4o:实现多模态 AI 交互

一、前言 OpenAI 推出了其最新的 AI 模型——GPT-4o&#xff0c;此次发布的并非 GPT-4.5 或 GPT-5&#xff0c;而是一款全新的“全模态模型(Omnimodel)”。这是一个将文本、语音和视觉能力集成到单一无缝 AI 体验中的突破性发展。 GPT-4o 于 2024 年 5 月 14 日发布&#xff0…

MYSQL和JAVA中将中文汉字按照拼音首字母排序

一、MYSQL将中文汉字按照拼音首字母排序 数据库使用的字符编码是utf8_general_ci&#xff0c;如下 ORDER BY CONVERT(表名.字段名 USING gbk) COLLATE gbk_chinese_ci ASC;若是表查询&#xff0c;CONVERT中可以不添加表名。 查询结果如下&#xff1a; 二、JAVA中将中文汉字…

分布式搜索-elaticsearch基础 概念

什么是elaticsearch: 倒排索引&#xff1a;就是将要查询的内容分成一个个词条&#xff0c;在将词条文档id存入&#xff0c;词条是唯一的。 文档词条总结: mysql和Elasticsearch概念对比: 架构: 基本概念总结:

高压无源探头能测整流桥电压吗?

高压无源探头是用于测量高电压电路中信号的一种工具&#xff0c;它不需要外部电源供电。然而&#xff0c;对于测量整流桥电压&#xff0c;需要考虑几个因素以确定是否可以使用高压无源探头。 首先&#xff0c;让我们了解一下整流桥的基本原理。整流桥是一种电路&#xff0c;用…

Axure10_win安装教程(安装、汉化、授权码,去弹窗)

1.下载Axure10 链接&#xff1a;https://pan.baidu.com/s/1fc8Bgyic8Ct__1IOv-afUg 提取码&#xff1a;9qew 2.安装Axure10 因为我的电脑是Windows操作系统&#xff0c;所以我下载的AxureRP-Setup-Beta v10.0.0.3816 (Win).exe 一直点下一步就行 3.Axure10中文 打开Axure…

高通QCS6490开发(二)AI板卡接口

QCS6490是高通公司针对高端物联网终端而优化的SoC&#xff0c;在性能和功耗上有最优的平衡。《高通QCS6490 AIoT应用开发》是一系列AIoT应用开发文章&#xff0c;介绍如何基于QCS6490平台做AIIoT的应用开发。 本文主要介绍FV01开发板的内部和外部接口。 内部的板载接口如下 接口…

淘系淘宝订单详情api接口(订单详情,订单列表,出售中,库存等属性)

淘系淘宝订单详情api接口&#xff08;订单详情&#xff0c;订单列表&#xff0c;出售中&#xff0c;库存等属性&#xff09;

【刷题(2)】矩阵

一、矩阵问题基础 遍历: for i in range(len(matrix)): for j in range(len(matrix[0]): while 倒序遍历: for i in range(right,left,-1) 临时存储:temp w,h:len(matrix[0])-1 len(matrix)-1 left,right,top,bottom:0 len(matrix[0])-1 0 len(matrix)-1 索引: width = le…

栈和队列的相互实现

1. 两个队列实现栈. - 力扣&#xff08;LeetCode&#xff09; 队列的特点是先进先出&#xff0c;而栈的特点是后进先出&#xff08;先进后出&#xff09;&#xff0c;也就是说重点在于利用两个队列来改变“出”的顺序。 假设我们在进行入栈操作的时候将数据依次入到一个队列中…