嵌入式Linux学习——Linux常用命令(下)

压缩/解压缩命令

gzip

gzip 的常用选项:

  • -l(list) 列出压缩文件的内容。
  • -k(keep) 在压缩或解压时,保留输入文件。
  • -d(decompress) 将压缩文件进行解压缩。

注意:

  • 如果 gzip 不加任何选项,此时为压缩。 压缩完该文件会生成后缀为.gz的压缩文件,并删除原来的文件。所以,推荐使用 gzip -k来压缩源文件,这样会保留原来的文件。
  • 相同的文件内容,如果文件名不同,压缩后的大小也不同。
  • gzip 只能压缩单个文件,不能压缩目录。

bzip2

bzip2 的常用选项:

  • -k(keep)在压缩或解压时,保留输入文件;
  • -d(decompress) 将压缩文件进行解压缩;

注意:

  • 如果 bzip2 不加任何选项,此时为压缩
  • 压缩完该文件会生成后缀为.bz2 的压缩文件, 并删除原来的文件。所以说,推荐使用 bzip2 -k 来压缩文件,这样可以保留原来的文件。
  • bzip2 只能压缩单个文件,不能压缩目录。
  • 单个文件的压缩使用 gzip 或 bzip2,压缩有两个参数:
    a) 压缩时间
    b) 压缩比。
  • 一般情况下,小文件使用 gzip 来压缩,大文件使用 bzip2 来压缩。 bzip2 的的
    压缩率更高。

tar

tar 常用选项:

  • -c(create):表示创建用来生成文件包 。
  • -x:表示提取,从文件包中提取文件。
  • -t:可以查看压缩的文件。
  • -z:使用 gzip 方式进行处理,它与” c“结合就表示压缩,与” x“结合就表示解压缩。
  • -j:使用 bzip2 方式进行处理,它与” c“结合就表示压缩,与” x“结合就表示解压缩。
  • -v(verbose):详细报告 tar 处理的信息。
  • -f(file):表示文件,后面接着一个文件名。
  • -C <指定目录> 解压到指定目录。

例 1: tar 打包、 gzip 压缩
把目录 dira 压缩、打包为 dira.tar.gz 文件:

$ tar czvf dira.tar.gz dira

注意:“tar – czvf”与“ tar czvf”是一样的效果,所以说,后面统一取消“ -”。

查看压缩文件:

$ tar tvf dira.tar.gz

解压文件,可以用-C 指定解压到哪个目录:

$ tar xzvf dira.tar.gz //解压到当前目录
$ tar xzvf dira.tar.gz -C /home/book //解压到/home/book。

vi编辑器

模式

vi 编辑器有三种模式,各个模式侧重点不一样:

  • 一般模式(光标移动、复制、粘贴、删除)
  • 编辑模式(编辑文本)
  • 命令行模式(查找和替换)

vi 编辑器的三种模式间切换如下图所示:
在这里插入图片描述

文件的打开/新建/保存

打开文件、新建文件,命令如下(如果文件存在则打开文件,否则新建文件并打开):

$ vi 文件名

修改结束之后,输入“ :” 进入命令行模式,再输入“ wq”保存退出:

:wq 保存并退出文件
:q! 直接退出不保存

编辑文件

打开文件后,默认处于“一般模式”,这时可以输入以下字母:

在这里插入图片描述

快速移动光标

在一般模式下,可以使用下面快捷键移动光标或是翻页:
在这里插入图片描述
在这里插入图片描述

文本复制/粘贴/删除/撤销

在一般模式下,可以执行以下命令:
在这里插入图片描述

文本查找和替换

在一般模式下,可以执行以下命令。
查找

/pattern //从光标开始处向文件尾搜索 pattern,后按下 n 或 N

注意:

  • n:在同一个方向重复上一次搜索命令
  • N:在反方向重复上一次搜索命令
  • 在/pattern 之前先跳到第一行则进行全文件搜索。

替换

 :%s/p1/p2/g //将文件中所有的 p1 均用 p2 替换
 :%s/p1/p2/gc //替换时需要确认
  • “ s“ 全称: substitute 替换;
  • “ g“ 全称: global 全局;
  • “ c“ 全称: confirm,确认

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

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

相关文章

web自动化系列-selenium的基本方法介绍

web自动化 &#xff0c;一个老生常谈的话题 &#xff0c;很多人的自动化之路就是从它开始 。它学起来简单 &#xff0c;但做起来又比较难以驾驭 &#xff1b;它的执行效率慢 、但又是最接近于用户的操作场景 &#xff1b; 1.web自动化中的三大亮点技术 我们先聊聊 &#xff0…

hive安装

文章目录 1、下载hive2、安装hadoop&#xff08;略&#xff09;3、安装mysql&#xff08;略&#xff09;4、安装 1、下载hive https://dlcdn.apache.org/hive/hive-3.1.3/ 2、安装hadoop&#xff08;略&#xff09; 3、安装mysql&#xff08;略&#xff09; 4、安装 解压 …

(十一)Servlet教程——Request请求转发

1.Web应用在处理客户端的请求的时候&#xff0c;一般的时候都需要多个资源协同处理&#xff0c;比如先经过一个Servlet的处理&#xff0c;然后再经过另外一个Servlet的处理。但是在一个Servlet中又不能直接调用另外一个Servlet的service方法&#xff0c;所以Servlet就提供了请求…

【嵌入式软件】LWIP 以太网通信

1.互联网模型 1.1 OSI&#xff08;Open System Interconnection&#xff09;七层模型 1&#xff09;应用层&#xff1a; 为上层用户提供应用的接口。常用的应用层的网络协议有&#xff1a;HTTP、FTP、TFTP、SMTP、SNMP、DNS、TELNET、HTTPS、POP3、DHCP 2&#xff09;表示层&…

【C++】C\C++内存管理

下面是围绕C\C内存管理这一块知识谈论相关的内存管理机制&#xff0c;有需要借鉴即可。 同时&#xff0c;我在下面也放了快速建立链表的模板&#xff0c;方便oj题目拿到vs上进行调试。 内存管理目录 1.CPP内存管理1.1new、delete关键字概念1.2特性1.3总结 2.new、delete的底层…

【C语言】贪吃蛇详解(附源码)

一、贪吃蛇实现效果 【C语言】贪吃蛇&#xff08;控制台&#xff09; 二、源码 &#x1f388;&#x1f388;&#x1f388;Snake 残风也想永存/C语言项目 - 码云 - 开源中国 (gitee.com)&#x1f388;&#x1f388;&#x1f388; 三、如何使用C语言去实现一个贪吃蛇&#xff1f…

每日一题:地下城游戏

恶魔们抓住了公主并将她关在了地下城 dungeon 的 右下角 。地下城是由 m x n 个房间组成的二维网格。我们英勇的骑士最初被安置在 左上角 的房间里&#xff0c;他必须穿过地下城并通过对抗恶魔来拯救公主。 骑士的初始健康点数为一个正整数。如果他的健康点数在某一时刻降至 0…

ThreeJs 环境配置及遇到问题的解决方法

一、环境搭建 ThreeJs在实际在实际使用中更多的是结合框架开发例如&#xff1a;vue框架、react框架&#xff0c;在使用时需要配置开发环境&#xff0c;本文使用的是vscode ThreeJs NodeJs vue 1、ThreeJs安装 下载路径&#xff1a;GitHub - mrdoob/three.js: JavaScript…

CentOS命令大全:掌握关键命令及其精妙用法!

CentOS是一种流行的开源企业级Linux发行版&#xff0c;它基于Red Hat Enterprise Linux (RHEL)的源代码构建。对于系统管理员和运维工程师来说&#xff0c;掌握CentOS的常用命令至关重要。 这些命令不仅可以帮助管理服务器&#xff0c;还可以进行故障排查、性能监控和安全加固等…

【idea】idea 中 git 分支多个提交合并一个提交到新的分支

一、方法原理讲解 我们在 dev 分支对不同的代码文件做了多次提交。现在我们想要把这些提交都合并到 test 分支。首先我们要明白四个 git 操作&#xff0c; commit&#xff1a;命令用于将你的代码变更保存到本地代码仓库中&#xff0c;它创建了一个新的提交&#xff08;commit…

Ubuntu编译安装MariaDB并进行初始化配置

Ubuntu编译安装MariaDB并进行初始化配置 1. 编译安装MariaDB2. 配置MariaDB3. Docker安装MariaDB 1. 编译安装MariaDB MariaDB官方安装文档&#xff1a;https://mariadb.com/kb/en/Build_Environment_Setup_for_Linux/    下载MariaDB源码&#xff1a;https://mariadb.org/ma…

Spring Boot 如何实现缓存预热

Spring Boot 实现缓存预热 1、使用启动监听事件实现缓存预热。2、使用 PostConstruct 注解实现缓存预热。3、使用 CommandLineRunner 或 ApplicationRunner 实现缓存预热。4、通过实现 InitializingBean 接口&#xff0c;并重写 afterPropertiesSet 方法实现缓存预热。 1、使用…

TCP-模拟BS架构通信

简介 bs是通过浏览器进行访问的每次访问都会开启一个短期的socket用来访问服务器的资源 响应报文的格式 服务端 bs架构中的b是浏览器&#xff0c;不需要我们书写&#xff0c;我们只需要书写服务端即可 服务端 public class Server {public static void main(String[] args) {S…

[C++]22:C++11_part_one

C11 一.列表初始化&#xff1a;1.{}初始化&#xff1a;2.C11扩大了列表初始化的范围&#xff1a;3.std::initializer_list1.简单类型的列表初始化&#xff1a;2.复杂类型的列表初始化3.实现vector的列表初始化4.实现list的列表初始化&#xff1a;5.不支持列表初始化&#xff1a…

制作一个RISC-V的操作系统十六-系统调用

文章目录 用户态和内核态mstatus设置模式切换核心流程封装代码背景解释代码示例解析解释目的 用户态和内核态 mstatus设置 此时UIE设置为1和MPIE为1&#xff0c;MPP设置为0 代表当前权限允许UIE中断发生&#xff0c;并且在第一个mret后将权限恢复为用户态&#xff0c;同时MIE也…

易错知识点(学习过程中不断记录)

快捷键专区&#xff1a; 注释&#xff1a;ctrl/ ctrlshift/ 保存&#xff1a;ctrls 调试&#xff1a; 知识点专区&#xff1a; 1基本数据类型 基本数据类型有四类&#xff1a;整型、浮点型、字符型、布尔型&#xff08;Boolean&#xff09;&#xff0c; 分为八种&#xff…

UE5 GAS开发P40 周期性效果,持续治疗

Periodic Gameplay Effects周期性的游戏效果 它们在一段时间内以固定的间隔重复应用到目标上。这种效果通常用于表示持续性伤害、治疗或其他影响&#xff0c;例如中毒、灼烧或回复效果。 修改GE_CrystalHeal,在Period改为每0.1秒执行一次 假如同时有三个持续时间在进行,那么这…

STM32与OLED显示屏通信(四针脚和七阵脚)

系列文章目录 STM32单片机系列专栏 C语言术语和结构总结专栏 文章目录 1. 单片机调试 2. OLED简介 3. 接线 4. OLED驱动函数 4.1 四针脚版本 OLED.c OLED.h OLED_Font.h 4.2 七针脚版本 引脚连接 OLED.c OLED.h OLED_Font.h 5. 主函数 工程文件模板 1. 单片机…

linux下安装deepspeed

安装步骤 一开始安装deepspeed不可以使用pip直接进行安装。 这时我们需要利用git进行clone下载到本地&#xff1a; git clone https://github.com/microsoft/DeepSpeed.git 进入到deepspeed的安装目录下 cd /home/bingxing2/ailab/group/ai4agr/wzf/Tools/DeepSpeed 激活…

verilog 从入门到看得懂---matlab 自动生成verilog

matlab 的强大不用多说&#xff0c;以前经常用simulink 生成c&#xff0c;最近尝试用simulink进行了verilog的生成&#xff0c;方法也很简单。 一个简单的示例如下。 1&#xff0c;新建一个模型文件&#xff0c;并且根据需要进行模型搭建 2.配置HDL生成模块 3.点击 generation…