当前位置: 首页 > 工具软件 > Classic Shell > 使用案例 >

shell-commands

夏景胜
2023-12-01

ls

lsof

lsof -c apa

-c后面的指令可以不用写完

find

按文件类型查找: -type f
按名字查找: -name *.txt

[root@test05 ab]# find . -type f -name "*.txt" 
[root@test05 ab]#

按大小来找 -size

# find / -size +30M
# 其中30前面的+-号代表,大于小于;

iotop

free

$free -m
             total       used       free     shared    buffers     cached
Mem:         48262       7913      40349          0         14        267
-/+ buffers/cache:       7631      40631
Swap:         2047        336       1711

# 上面的情况下我们总的内存有48262M,用掉了7913M(其中包括了buffers+cached)。
# 其中buffer+cache总共14+267=281M, 由于这种类型的内存是可以回收的,虽然我们用掉了7913M,但是实际上我们如果实在需要的话,这部分buffer/cache内存是可以放出来的。
# buffer: 作为buffer cache的内存,是块设备的读写缓冲区
# cache: 作为page cache的内存, 文件系统的cache

buffers/cached

缓存(cache)是把读取过的数据保存起来,重新读取时若命中(找到需要的数据)就不要去读硬盘了,若没有命中就读硬盘。其中的数据会根据读取频率进行组织,把最频繁读取的内容放在最容易找到的位置,把不再读的内容不断往后排,直至从中删除。 ——-把频繁读取的数据cache起来
缓冲(buffers)是根据磁盘的读写设计的,把分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。linux有一个守护进程定期清空缓冲内容(即写如磁盘),也可以通过sync命令手动清空缓冲。 —–把分散写集中进行

[root@server test]# sync
[root@server test]# echo 3 > /proc/sys/vm/drop_caches
# To free pagecache, use 1
# to free dentries and inodes, use 2
# to free pagecache, dentries and inodes, use echo 3

awk

split

The awk function split(s,a,sep) splits a string s into an awk array a using the delimiter sep.

awk ‘{pattern + action}’ {filenames}

root@pythonLang# echo `echo "<Hlz>value</Hlz>" | awk '{split($0, arr, "<|>"); print arr[3]}'`
value

root@pythonLang# date
Sat Jun 10 16:07:15 HKT 2017
root@pythonLang# echo `echo $(date) | awk '{split($0,a,":" ); for (i=1; i<=3; i++) print a[i]}'` 
Sat Jun 10 16 07 16 HKT 2017

xargs

参数 -i/I

[root@test05 ab]# find . -type f -name "*.txt" | xargs -i cp {}  /tmp/k/
#加-i 参数直接用 {}就能代替管道之前的标准输出的内容;
[root@test05 ab]#
[root@test05 ab]# find . -type f -name "*.txt" | xargs -I {} cp {}  /tmp/n/
#加 -I 参数 需要事先指定替换字符

正则表达式

语法

两种模式

贪婪模式:匹配尽可能多的字符(默认执行);
懒惰模式:匹配尽可能少的字符;— 在原有的基础上加?即可;

代码/语法说明
*?重复任意次,但尽可能少重复
+?重复1次或更多次,但尽可能少重复
??重复0次或1次,但尽可能少重复
{n,m}?重复n到m次,但尽可能少重复
{n,}?重复n次以上,但尽可能少重复
 类似资料: