CSA笔记3-文件管理命令(补充)+vim+打包解包压缩解压缩命令

news2024/11/14 20:32:07

grep(-i -n -v -w)

[root@xxx ~]# grep root anaconda-ks.cfg #匹配关键字所在的行

[root@xxx ~]# grep -i root anaconda-ks.cfg #-i 忽略大小写  

[root@xxx ~]# grep -n root anaconda-ks.cfg #显示匹配到的行号  

[root@xxx ~]# grep -v root anaconda-ks.cfg #-v 不匹配有root的行

[root@xxx ~]# grep root anaconda-ks.cfg -w #-w 完全匹配this root  

sort(-n 、-r、-t、-k):默认是ASCII排序

[root@xxx ~]# cat xiaohong.txt

this is xiaohong

SLDFJ

lskjdf

LSDK

aaaa

[root@xxx ~]# sort xiaohong.txt #默认是ASCII排序

aaaa

LSDK

lskjdf

SLDFJ

this is xiaohong

[root@xxx ~]# locale

LANG=en_GB.UTF-8

LC_CTYPE="en_GB.UTF-8"

LC_NUMERIC="en_GB.UTF-8"

LC_TIME="en_GB.UTF-8"

LC_COLLATE="en_GB.UTF-8"

LC_MONETARY="en_GB.UTF-8"

LC_MESSAGES="en_GB.UTF-8"

LC_PAPER="en_GB.UTF-8"

LC_NAME="en_GB.UTF-8"

LC_ADDRESS="en_GB.UTF-8"

LC_TELEPHONE="en_GB.UTF-8"

LC_MEASUREMENT="en_GB.UTF-8"

LC_IDENTIFICATION="en_GB.UTF-8"

LC_ALL=

[root@xxx ~]# export LC_ALL=C

[root@xxx ~]# locale

LANG=en_GB.UTF-8

LC_CTYPE="C"

LC_NUMERIC="C"

LC_TIME="C"

LC_COLLATE="C"

LC_MONETARY="C"

LC_MESSAGES="C"

LC_PAPER="C"

LC_NAME="C"

LC_ADDRESS="C"

LC_TELEPHONE="C"

LC_MEASUREMENT="C"

LC_IDENTIFICATION="C"

LC_ALL=C

[root@xxx ~]# sort xiaohong.txt

LSDK

SLDFJ

aaaalskjdf

this is xiaohong

[root@xxx ~]# cat xiaohong.txt

this is xiaohong

SLDFJ

lskjdf

LSDK

aaaa

[root@xxx ~]# cat xiaoming.txt

123

1

5555

33

[root@xxx ~]#

[root@xxx ~]# sort -n xiaoming.txt #-n 对数值进行排序

1

33

123

5555

[root@xxx ~]# sort -nr xiaoming.txt #-r反向排序,-nr按照数值从大到小排序

5555

123

33

1

[root@xxx ~]# cat xiaoming.txt

root:1:xxx

xxx:100:yyy

dfkj:22:lsdkjf

djf:333:lsdj

[root@xxx ~]# sort -t : -k 2 -n /root/xiaoming.txt #-t指定分隔符、-k指定某个字段

root:1:xxx

dfkj:22:lsdkjf

xxx:100:yyy

djf:333:lsdj  

uniq(-c) 

[root@xxx ~]# cat xiaoming.txt

root:1:xxx

root:1:xxx

xxx:100:yyy

dfkj:22:lsdkjf

djf:333:lsdj

root:1:xxx

[root@xxx ~]# uniq xiaoming.txt # 去除重复的行,不相邻的不认为是相同的

root:1:xxx

xxx:100:yyy

dfkj:22:lsdkjf

djf:333:lsdjroot:1:xxx

[root@xxx ~]# uniq -c xiaoming.txt #统计

2 root:1:xxx

1 xxx:100:yyy

1 dfkj:22:lsdkjf

1 djf:333:lsdj

1 root:1:xxx

[root@xxx ~]#

cut(-d、-f 、-f 1,2、 -f 1-4) 

[root@xxx ~]# cut -d : -f 1 xiaoming.txt # -d 指定分割符 -f 指定字段。-f 1 指定1

.

root

root

xxx

dfkj

djf

root

[root@xxx ~]# cut -d : -f 3 xiaoming.txt

xxx

xxx

yyy

lsdkjf

lsdj

xxx

[root@xxx ~]# cut -d : -f 1,3 xiaoming.txt # -f 1,3 指定第一列1和第三列

root:xxx

root:xxx

xxx:yyy

dfkj:lsdkjf

djf:lsdj

root:xxx

[root@xxx ~]# vim xiaoming.txt

[root@xxx ~]# cat xiaoming.txt

root:1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

root:1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

root:1:xxx:cccccl:ksdjflsdj:lskdjf:lskdjfj

root:1:xxx:aaaa:ksdjflsdj:lskdjf:lskdjfj

root:1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

root:1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

[root@xxx ~]# cut -d : -f 2-7 xiaoming.txt ## -f 2-7 指定第27

1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

1:xxx:cccccl:ksdjflsdj:lskdjf:lskdjfj

1:xxx:aaaa:ksdjflsdj:lskdjf:lskdjfj

1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

1:xxx:lllll:ksdjflsdj:lskdjf:lskdjfj

面试笔试】公司有网站日志记录,统计出访问该网站的访问次数最多的客户端ip地址是多少?[root@localhost ~]# cat ip.log

2022/12/01 12:00 10.0.0.1 Chrome

2022/12/11 12:00 192.168.1.2 Chrome

2022/12/12 12:00 10.0.0.2 Chrome

2023/01/01 13:00 192.168.1.2 firefox

2023/06/06 15:01 10.0.0.2 firefox

[root@xxx ~]# cut -d " " -f 3 ip.log | sort -nr | uniq -c |  head -2

cp

语法格式:cp  参数  源文件名  目标文件名

常用参数:

示例

使用这些命令之前,建议ls,查看文件是否存在,如果不存在则cp/mv会操作失败

cp  file.cfg  file2.cfg    复制指定的源文件,并定义新文件的名称,相当于文件备份

cp  -r  dir1  dir2      复制指定的源目录,并定义新目录的名称

cp  -a  file.cfg  file2.cfg  复制文件时,保留其原始权限及用户归属信息

cp  -f  file.cfg  /dir1    将指定文件复制到/dir1目录中,并覆盖已有文件,不进行询问

cp  file1.cfg  file2.cfg  /dir2  将多个文件一同复制到指定目录/dir2中

注意:拷贝操作,会有新的一份文件生成,所以源文件依旧存在

      如果只需要一份文件,只是移动了文件的位置则使用mv命令

cp  xxx.txt  yyy.txt  zzz.txt  ./dir1  拷贝文件到指定目录,源文件依旧存在

mv  xxx.txt  yyy.txt  zzz.txt  ./dir1  移动文件到指定目录,源文件不存在

共享文件拷贝:

从共享中拷贝文件到虚拟机的家目录:cp  /mnt/hgfs/share/xxx.txt  ~

从家目录拷贝文件到共享文件目录: cp  ~/xxx.txt   /mnt/hgfs/share

从u盘拷贝文件到家目录:  cp  /run/media/caoqb/TOOL/xxx.txt   ~

  1. 格式:fat32格式
  2. usb控制器的兼容性选3.1

ln

Linux系统中的链接文件有两种新式,一种是硬链接,另一种是软连接。

软连接相当于Windows系统中的快捷方式文件,原始文件被移动或删除后,软连接文件也将无法使用

硬链接则是将文件的inode 属性块进行复制,因此把原始文件移动或删除后,硬链接文件依然可以使用

语法格式:ln  参数  源文件名  目标链接文件名

常用参数:

示例:

ln  file1  file2    为指定的源文件创建硬连接

ln  -s  file1    file2  为指定的源文件创建软连接

ln  -v  file1  file2  为指定的源文件创建硬链接,并输出制作的过程信息

pwd

用于查看当前所处的工作目录路径,防止“迷路”

语法格式:pwd  参数

常用参数:

-L显示逻辑路径        --version显示版本信息

-P显示实际物理路径    --help显示帮助信息

示例:

pwd      查看当前工作目录路径

编辑器vim命令

终端下编辑文件的首选工具

基本上vim可以分为三种模式,分别是:

命令模式(command mode) ==>输入vim的命令和快捷键,默认打开文件时的模式

插入模式(insert mode) ==>进入编辑模式,可以编辑文件

底行模式(last line mode) ==>调整文件内容

在底行模式下:wq  写入并退出

              x  等效于wq

              q! 强制退出,不保存

             shift+z+z  等效于wq

             q  不保存退出

             wq!  强制保存退出

            wq /home/xxx.txt  指定位置保存文件

常规基本操作:

  1. vim file  vim后跟文件名打开文件,默认进入命令行模式,不能编辑文件
  2. 按下a i s o(不区分大小写)即可进入插入模式,注意文件左下角会出现提示
  3. 开始编辑文件
  4. 按下esc键,切换到命令行模式,再按上述操作选择保存或不保存退出

快捷操作:

移动到行首 0                 移动到行尾  $

屏幕滚动下 ctrl+f              屏幕滚动上 ctrl+b

zt 定位到屏幕顶端             zb 定位到屏幕底端

gg 定位到文件开头            G 定位到文件末尾

其他快捷键:

查找与替换命令:

其他常用操作:

压缩解压缩文件

打包解包指令: tar

压缩解压缩指令:  zip  xz  /了解即可

打包解包压缩解压缩:tar  /重点掌握

tar

语法格式: tar  (选项)  (参数)

选项:

操作案例:

打包:tar  -cvf  xxx.tar  xxx   将xxx文件/目录打包成为xxx.tar包文件

解包:tar  -xvf  xxx.tar  将xxx.tar包文件释放到当前目录中

     注意:如果要指定位置解包------- tar  -xvf  xxx.tar   -c path

压缩:

zip  xxx.zip xxx  将xxx文件压缩为xxx.zip的压缩文件

压缩目录加上-r

xz  -z xxx.tar  将xxx.tar压缩成xxx.tar.xz压缩文件,源文件直接压缩

解压缩:

unzip  xxx.zip   将xxx.zip压缩文件解压缩到当前目录

若要指定目录解压缩必须: unzip  xxx.zip  -d  path

xz  -d  xxx.tar.xz   可以将后缀是xz的文件解压成tar包

打包压缩命令:

tar  -zcvf  xxx.tar.gz  xxx  将文件/目录xxx打包压缩为xxx.tar.gz文件

tar  -jcvf  xxx.tar.bz2  xxx  将文件/目录xxx打包压缩为xxx.tar.bz2文件

解压缩解包命令:
tar  -zxvf  xxx.tar.gz  将xxx.tar.gz文件直接解压缩解包到当前目录,可以将文件用 -C参数指定解压缩解包到指定目录,比如 tar  -zxvf  xxx.tar.gz  -C  /home

tar  -jxvf  xxx.tar.bz2 将压缩文件直接解压缩解包到当前目录

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

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

相关文章

记录些MySQL题集(8)

ACID原则、事务隔离级别及事务机制原理 一、事务的ACID原则 什么是事务呢?事务通常是由一个或一组SQL组成的,组成一个事务的SQL一般都是一个业务操作,例如聊到的下单:「扣库存数量、增加订单详情记录、插入物流信息」&#xff0…

AQS详解

文章目录 AQS 是什么?AQS 的原理是什么?AQS 资源共享方式总结 AQS 是什么? AQS 的全称为 AbstractQueuedSynchronizer ,翻译过来的意思就是抽象队列同步器。这个类在 java.util.concurrent.locks 包下面。 AQS是一个用来构建锁和…

【操作系统】定时器(Timer)的实现

这里写目录标题 定时器一、定时器是什么二、标准库中的定时器三、实现定时器 定时器 一、定时器是什么 定时器也是软件开发中的⼀个重要组件.类似于⼀个"闹钟".达到⼀个设定的时间之后,就执行某个指定 好的代码. 定时器是⼀种实际开发中⾮常常用的组件. ⽐如⽹络通…

base SAS programming学习笔记13(Array)

1.Array array-name{dimension} <elements> array-name&#xff1a;向量名称 dimension&#xff1a;向量长度&#xff0c;默认为1&#xff1b; elements:列出变量名&#xff0c;变量名要么全是数值变量或者全是字符变量 array-name和variable不能相同&#xff1b;也不能和…

【BUG】已解决:java.lang.IllegalStateException: Duplicate key

已解决&#xff1a;java.lang.IllegalStateException: Duplicate key 欢迎来到英杰社区https://bbs.csdn.net/topics/617804998 欢迎来到我的主页&#xff0c;我是博主英杰&#xff0c;211科班出身&#xff0c;就职于医疗科技公司&#xff0c;热衷分享知识&#xff0c;武汉城市…

Java红娘婚恋相亲交友系统小程序源码

红娘婚恋相亲交友小程序&#xff1a;遇见爱情&#xff0c;从指尖开始&#x1f496; &#x1f4f1; 掌中红娘&#xff0c;随时待命 &#x1f48c; 在这个数字化时代&#xff0c;爱情也迎来了它的新舞台——“红娘婚恋相亲交友小程序”。只需轻轻一点&#xff0c;你的专属红娘就…

记录些MySQL题集(6)

MySQL 单表为什么不要超过 2000W 行&#xff1f; 数据持久化在磁盘中&#xff0c;磁盘的最小单元是扇区&#xff0c;一个扇区 0.5 KB&#xff0c;而由 8 个扇区可以构成一个文件系统块&#xff08;4K&#xff09;&#xff0c;以 InnoDB 存储引擎为例&#xff0c;一个数据页的大…

浅谈C嘎嘎类与对象

本篇文章与大家浅谈一下C嘎嘎的类与对象知识点 类的定义 关键字&#xff1a;class 语法格式&#xff1a; class 类名 { }&#xff1b;//这里的分号不能少 此外&#xff0c;class有三个属性分别是private、public、protected&#xff0c;这三个属性是干啥的&#xff0c;相…

昇思25天学习打卡营第13天|CycleGAN 图像风格迁移互换全流程解析

目录 数据集下载和加载 可视化 构建生成器 构建判别器 优化器和损失函数 前向计算 计算梯度和反向传播 模型训练 模型推理 数据集下载和加载 使用 download 接口下载数据集&#xff0c;并将下载后的数据集自动解压到当前目录下。数据下载之前需要使用 pip install dow…

如何PR到别人仓库(指定分支,无废话)

如何PR到别人仓库&#xff08;指定分支&#xff09; 记录一下&#xff0c;之前都是直接master分支&#xff0c;现在记录如何pr到别人仓库的其他分支 首先进入别人仓库然后点击fork到自己仓库 步骤&#xff08;以博主自己一个例子为例&#xff09; &#xff08;1&#xff09;…

配置和保护SSH

使用SSH访问远程命令行 描述Secure Shell SSH&#xff08;Secure Shell&#xff09; 是一种网络协议&#xff0c;用于在不安全的网络上安全地进行系统管理和数据传输。它最初由 Tatu Ylnen 于1995年设计&#xff0c;并成为保护网络服务免受攻击的标准。SSH提供了多种功能&…

prometheus+grafana应用监控配置

配置Prometheus 官方地址&#xff1a;Download | Prometheus &#xff08;wegt下载压缩包&#xff0c;解压并重命名prometheus&#xff0c;文件放于/data/prometheus即可&#xff09; 配置 service方法(文件放于 /etc/systemd/system/prometheus.service)&#xff1a; [Unit…

Windows与Ubuntu安装ffmpeg

文章目录 前言ffmpeg的简介安装ffmpegWindows下载设置环境变量 Ubuntu 总结 前言 FFmpeg是一款非常强大的开源音视频处理工具&#xff0c;它包含了众多的音视频编解码库&#xff0c;可以用于音视频的采集、编解码、转码、流化、过滤和播放等复杂的处理。在Windows系统上安装FF…

Talk|清华大学袁天远:PreSight - 利用NeRF先验帮助自动驾驶场景在线感知

本期为TechBeat人工智能社区第605期线上Talk。 北京时间7月3日(周三)20:00&#xff0c;清华大学博士生—袁天远的Talk已经准时在TechBeat人工智能社区开播&#xff01; 他与大家分享的主题是: “PreSight - 利用NeRF先验帮助自动驾驶场景在线感知”&#xff0c;他向大家介绍了新…

OBD诊断(ISO15031) 08服务

文章目录 功能简介ISO 9141-2、ISO 14230-4和SAE J1850的诊断服务定义1、请求控制车载设备请求消息&#xff08;读取支持的TID&#xff09;2、请求控制车载设备响应消息&#xff08;报告支持的TID&#xff09;3、请求控制车载设备请求消息&#xff08;读取TID值&#xff09;4、…

QTableView仿Excel表头排序和筛选

一.效果 Excel的排序和筛选弹窗如下所示 功能非常强大。不仅支持内容排序和筛选,还支持颜色的排序和筛选,而且还支持设置多种过滤条件。本文只仿最常用的内容排序和内容单过滤条件的筛选,效果如下所示。 从效果图中可以看出,表头Section中的按钮有下列六种状态 enum Butt…

自制OJ在线判题网站

项目效果啊演示&#xff1a; 项目链接&#xff1a; Gitee:Oj: 自定义实现的OJ在线做题网站&#xff0c;自主实现代码沙箱 (gitee.com) GitHub:GitHub - SakanaYdy/Oj 仓库中含有完整的项目流程PDF文档&#xff0c;可以参考自定义OJ网站。 目前只支持Java语言&#xff0c;可以…

【zabbix6监控java-tomcat全流程】

目录 一、监控主机安装zabbix-server1、zabbix的安装2、配置数据库3、为zabbix server配置数据库4、启动服务,web界面安装 二、被监控主机安装tomcat1、安装JDK2、安装tomcat 三、zabbix的服务端安装zabbix-java-gateway四、被监控主机tomcat的配置五、web界面添加主机 一、监控…

动态规划题目:单词拆分/三角形最小路径和 - leetcode

动态规划思想 / 步骤 &#xff1a; 先将 当前要求 总结成一个 精炼的 小问题 &#xff0c; 然后 将 求解题目 转换为 求解N个 小问题 &#xff0c; 每个小问题的 求解过程相同 &#xff0c;但是 过程涉及 的 数据 是不同的 &#xff0c; 例如第三个 小问…

windows qt编译报错 无法打开包括文件: “EGL/egl.h”: No such file or directory

windows mingw32 qt creator QtAV 推荐ffmpeg依赖包 QT5.14.2 如果出现&#xff1a;无法打开包括文件: “EGL/egl.h”: No such file or directory 可能是Qt6的问题.在QT5上安装。 编译步骤&#xff1a; git clone https://github.com/wang-bin/QtAV.git cd QtAV &&…