linux常用命令

shell脚本常用命令

awk

awk 选项 '模式或条件 {操作}' 文件 1 文件 2 ...

常用的内部变量:

NF: 字段个数

NR: 当前的行号

复制代码
awk 'NR==1,NR==3 {print $1}' demo.txt # 输出一到三行
awk '(NR==1)&&(NR==3) {print $1}' demo.txt # 输出第一行和第三行
awk 'BEGIN {x=0};/^hello/{x++};END {print x}' demo.txt # 统计以hello开头的行数	

第三个是比较完整的用法。有BEGIN,有限制条件,有循环体,有END。

shell脚本数组@和*的区别

复制代码
"${数组变量[*]}": 加上双引号,bash会当成是一串字符串处理
${数组变量[*]}: 不加上双引号,bash会当成是数组处理
${数组变量[@]:加不加双引号bash都是当成数组处理

sort和uniq

sort是对输出内容进行排序,uniq是对输出内容的相邻行进行去重。

复制代码
sort -u demo.txt # 对demo.txt排序去重

uniq -c demo.txt # 对相邻行进行去重计数
uniq -d demo.txt # 显示相邻行重复的结果

xargs

将结果作为参数进行执行

复制代码
find -name '*.log' -print0 | xargs -0 rm  # 找到.log结尾的文件,拼接\0,执行的时候按\0进行分隔,然后删除文件
相关推荐
ltl1 小时前
校验和与数据完整性:CRC32C、xxHash 与端到端校验
linux
我是小灰灰吖2 小时前
Ubuntu 22.04 设置 CPU 性能模式:提升系统响应速度
linux·ubuntu
ltl2 小时前
持续性能分析:Parca、Pyroscope、Grafana Beyla
linux
ltl2 小时前
Direct I/O 与 O_DIRECT:绕过缓存的得与失
linux
盐焗鹌鹑蛋3 小时前
【Linux】进程控制
linux
微三云 - 廖会灵 (私域系统开发)3 小时前
抖店 OPC 自动化运营系统架构与商业代理分控体系完整解析
运维·系统架构·自动化
G31135422733 小时前
大模型不可用时,业务还能不能继续:企业需要设计降级方案
大数据·服务器·数据库·人工智能·深度学习
办公室马主任4 小时前
华南机械加工企业选MES服务商怎么选?
大数据·运维·人工智能·制造
盐焗鹌鹑蛋4 小时前
【Linux】进程程序替换
linux
鸠摩智首席音效师5 小时前
Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead
linux