shell常用命令

 

1 批量注释和批量删除注释

   在10 – 20行添加 // 注释

     :10,50s#^#//#g

   在10 – 20行删除 // 注释

     :10,20s#^//##g

   在10 – 20行添加 # 注释

     :10,20s/^/#/g

   在10 – 20行删除 # 注释

     :10,20s/^/#/g


每行 行首或行尾插入指定字符串

行首 :%s/^/your_word/

行尾 :%s/$/your_word/

替换

:%s/aliyun.com8/aliyun.com/g 

去掉换行符

:%s/\n//g

删除指定字符串test,从n开始

:n,$s/test//

显示文件编码

:set fileencoding 

设置文件编码utf-8

:set encoding=utf-8

2 显示100到500行

cat filename | head -n 500 | tail -n +100

3 对比1,2文件的差值

方法1 comm -1 -3 ruler_action_sort ruler_all_sort > a

方法2 awk ‘ARGV[1]==FILENAME{a[$1]=1;next;}{if(!($1 in a)){print $1}}’ luanxu_top 20190224_luanxu_users_all > luan_123

4 打开使用screeen

script /dev/null

screen -S gaopeng

screen -ls

screen -r 23577.xiuguan

5 grep搜索

grep -C 5 foo file 显示file文件里匹配foo字串那行以及上下5行

grep -B 5 foo file 显示foo及前5行

grep -A 5 foo file 显示foo及后5行

grep 关键词 文件 | awk ‘{print $6}’ |awk -F “:” ‘{print $2}’|sort -n -r| awk ‘{print int($0/10000)”0ms”}’ |sort | uniq -c

6 vi命令

显示行数
 :set nu

:set nonu

注释

:40,42 s/^/#/  

:40,42 s/#//

7 查找文件find

查找全部文件

find . -name ‘20190426*’

查找文件
find .  -type d  -name ‘20190426*’

查找文件夹
find .  -type f  -name ‘20190426*’

8 文件个数和大小

文件个数不包含目录

ls -l | grep “^-” | wc -l

文件个数包含子目录

ls -lR| grep “^-” | wc -l

文件夹个数

ls -lR | grep “^d” | wc -l

文件大小

du -sh /root

磁盘空间

df -h

当前目录的文件夹大小

du -h –max-depth=1

8 行转列

原文件

1

2

3

4

5

6

转化为

1,2,3

4,5,6

cat a | awk ‘BEGIN{line=””}{if(line==””){line=$0}else{line=line”,”$0};if(NR%3==0){print line;line=””}}END{print line}’

 

标签:
,
分类:SERVER | 发布:inzaghi | 评论:shell常用命令已关闭评论 | 发表时间:2021-11-19 15:55
引用:点击这里获取该日志的TrackBack引用地址
上一篇:
下一篇:

Comments are closed.

Design By Inzaghi | 京ICP备16047555号-1