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 将压缩文件直接解压缩解包到当前目录

  • 39
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值