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进行分隔,然后删除文件
相关推荐
眷蓝天14 小时前
Docker 镜像瘦身:从 GB 到 MB 的优化实践
运维·docker·容器
实心儿儿14 小时前
Linux —— 进程控制 - mini shell
linux·运维·服务器
程序员黄老师14 小时前
Windows文件移动到Linux上的坑
linux·运维·服务器
shizhan_cloud14 小时前
自动化部署Kubernetes集群
运维·kubernetes
mounter62515 小时前
【内核前沿】Linux IPC 迎来大变局?POSIX 消息队列增强、io_uring IPC 与 Bus1 十年回归
linux·运维·服务器·kernel·ipc·io_uring
不怕犯错,就怕不做15 小时前
Linux-Sensor驱动移植与调试(转载)
linux·驱动开发·嵌入式硬件
wzl2026121315 小时前
企业微信定时群发技术实现与实操指南(原生接口+工具落地)
java·运维·前端·企业微信
island131415 小时前
最详细VMware Workstation 17 上安装 Ubuntu 系统
linux·数据库·ubuntu
2401_8955213416 小时前
Linux下安装Redis
linux·运维·redis
网络小白不怕黑16 小时前
2.1VMware部署Windows_server_2008_R2
运维·服务器