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

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://xiahunao.cn/news/3246914.html

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

相关文章

大模型算法专家的逻辑推演

大家好,我是卢麒。 如今,各大电商平台对于大模型算法的研发已经历经了无数次的迭代。 本文基于大模型算法的一些实际应用,做一些分析。 一,大模型算法专家的技术应用 作为大模型算法专家,在技术应用时,…

使用windows批量解压和布局ImageNet ISLVRC2012数据集

使用的系统是windows,找到的解压命令很多都linux系统中的,为了能在windows系统下使用,因此下载Git这个软件,在其中的Git Bash中使用以下命令,因为Git Bash集成了很多linux的命令,方便我们的使用。 ImageNe…

set类和map类介绍和简单使用

目录 set类介绍与简单使用 set类 multiset类 map类介绍与简单使用 map类 multimap类 set类介绍与简单使用 set类是一种关联式容器,在数据检索时比序列式容器效率更高。本质是一个常规的二叉搜索树,但是为了防止出现单支树导致效率下降进行了相关优…

Linux 命令 —— top命令(查看进程资源占用)

文章目录 top 命令显示信息介绍top 命令使用 top 命令显示信息介绍 top 命令是 Linux/Unix 系统中常用的进程监控工具,可以实时动态显示系统中各个进程的资源占用情况,包括CPU、内存等。 进入 linux 系统,直接输入 top,回车&…

2014-2024年腾势D9N7N8EVDMI维修手册和电路图资料线路图接线图

经过整理,2014-2024年腾势汽车全系列已经更新至汽修帮手资料库内,覆盖市面上99%车型,包括维修手册、电路图、新车特征、车身钣金维修数据、全车拆装、扭力、发动机大修、发动机正时、保养、电路图、针脚定义、模块传感器、保险丝盒图解对照表…

中国星坤X0800HI系列线对板连接器:创新技术连接,引领智能家居未来!

近日,中国星坤推出的X0800HI系列线对板连接器,凭借其独特的设计和卓越的性能,引起了业界的广泛关注。 X0800HI系列线对板连接器在极小空间内实现了线对板的W-B连接,这不仅解决了传统连接方式中剥线和焊接的繁琐步骤,还…

Seata源码分析 全局事务开启提交回滚流程

文章目录 Seata全局事务源码Seata AT模式的设计思路源码入口TransactionalTemplate开启全局事务TM开启全局事务TC处理TM的请求 全局事务提交微服务端TM发送请求TC处理TM的请求RM处理TC的请求 全局事务回滚TM发送请求TC处理TM的请求RM处理TC的请求 补充知识微服务怎么找TC服务 S…

配置三层链路聚合增加链路带宽并提高可靠性的示例

规格 适用于所有版本的AR路由器。 AR161、AR161W、AR169、AR161G-L不支持该示例。 组网需求 在某小型企业网环境中部署了两台AR路由器Router_1和Router_2,Router_1作为用户接入设备,Router_2作为网络接入设备。为了保证用户的带宽,当用户量…

【Kaggle】练习赛《保险交叉销售的二分类预测》

前言 本篇文章介绍的是Kaggle月赛《Binary Classification of Insurance Cross Selling》,即《保险交叉销售的二元分类预测》。这场比赛非常适合作为机器学习入门者的实践练习。在之前的几期练习赛中,我们从多个角度详细讲解了探索性数据分析&#xff0…

爆火出圈的Robotaxi,会是自动驾驶的最优解吗?

八年前,百度决定投资无人驾驶时,李彦宏说:“它是人工智能最顶级的工程,将彻底改变人类的出行和生活。” 八年后,萝卜快跑从理想变成现实,奔跑在全国各地的街头,诠释了什么叫“科技不该高高在上…

2.javaWeb_请求和响应的处理(Request,Response)

2.请求和响应的处理 文章目录 2.请求和响应的处理一、动态资源和静态资源javax.servlet(包) 二、Servlet体系1.简介2.HttpServlet3.Servlet生命周期 三、Request对象1.ServletRequest1)ServletRequest主要功能有:2)ServletRequest类的常用方法: 2.HttpServletReques…

72B大模型分片部署

一、定义 目的官方教程案例小模型修改device_map 方式二 二、实现 目的: 将72B大模型 部署到2张gpu 显卡中。官方教程 帖子:https://huggingface.co/blog/accelerate-large-models实现 1. 自动部署 model AutoModelForCausalLM.from_pretrained(mod…

JUC 包中的 Atomic 原子类总结

人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…

【Java数据结构】初始线性表之一:链表

为什么要有链表 上一节我们描述了顺序表:【Java数据结构】初识线性表之一:顺序表-CSDN博客 并且进行了简单模拟实现。通过源码知道,ArrayList底层使用数组来存储元素。 由于其底层是一段连续空间,当在ArrayList任意位置插入或者…

Linux shell编程学习笔记64:vmstat命令 获取进程、内存、虚拟内存、IO、cpu等信息

0 前言 在系统安全检查中,通常要收集进程、内存、IO等信息。Linux提供了功能众多的命令来获取这些信息。今天我们先研究vmstat命令。 1.vmstat命令的功能、用法、选项说明和注意事项 1.1 vmstat命令的功能 vmstat是 Virtual Meomory Statistics(虚拟内…

4.作业--Jquery,JS

目录 作业题目:1.使用Jquery完成点击图片变换图片颜色 A图 B代码 HTML的部分 JQ的部分 作业题目:2.使用JS中的DOM操作完成背景颜色渐变方向变换。点击背景,渐变方向发生改变。 A图 B代码 学习产出: 作业题目:1…

封装网络请求 鸿蒙APP HarmonyOS ArkTS

一、效果展示 通过在页面直接调用 userLogin(params) 方法,获取登录令牌 二、申请网络权限 访问网络时候首先需要申请网络权限,需要修改 src/main 目录下的 module.json5 文件,加入 requestPermissions 属性,详见官方文档 【声明权…

深度学习Week20——Pytorch实现残差网络和ResNet50V2算法

文章目录 深度学习Week20——Pytorch实现残差网络和ResNet50V2算法 一、前言 二、我的环境 三、代码复现 3.1 配置数据集 3.2 构建模型 四、模型应用与评估 4.1 编写训练函数 4.2 编写测试函数 4.3 训练模型 4.4 结果可视化 一、前言 🍨 本文为🔗365天深…

昇思25天学习打卡营第 12 天 | mindspore 实现 ResNet50 图像分类

1. 背景: 使用 mindspore 学习神经网络,打卡第 12 天;主要内容也依据 mindspore 的学习记录。 2. ResNet 介绍: mindspore 实现 ResNet50 图像分类; ResNet 基本介绍: Residual Networks 是微软研究院 K…

港股指数实时行情API接口

港股 指数 实时 行情 API接口 # Restful API https://tsanghi.com/api/fin/index/HKG/realtime?token{token}&ticker{ticker}指定指数代码,获取该指数的实时行情(开、高、低、收、量)。 更新周期:实时。 请求方式&#xff1a…