Shell速成:快速提升你的Linux命令行技能

1 diff 对比文件不同

bash 复制代码
diff file1 file2 # 区分两个文件不同的地方
bash 复制代码
[num1,num2][a|c|d][num3,num4]
num1,num2 ##第一个文件中的行
a ##添加
c ##更改
d ##删除
< ##第一个文件中的内容
> ##第二个文件中的内容
num3,num4 ##第二个文件中的行

-b忽略空格

-B忽略空行

-i 忽略大小写

-c 显示文件所有内容并标示不同

-r 对比目录

-u合并输出

2 patch 打补丁

2.1 patch 原文件 补丁文件

2.1 -b 备份原文件

3 cut 截取

3.1 -d 指定:为分隔符

-f 指定显示的列

3.2 -c 指定截取的字符(数字用法同-f)

4 sort

4.1 -n ##纯数字排序

4.2 -r ##倒叙

4.3 -u ##去掉重复

4.4 -o ##输出到指定文件

4.5 -t ##指定分隔符

4.6 -k ##指定排序的列

5 uniq

5.1 -c #合并重复并统计重复个数

5.2 -d #显示重复的行

5.3 -u #显示唯一的行

6 tr

6.1 tr 'a-z' 'A-Z' ##小写转大写

6.2 tr 'A-Z' 'a-z' ##大写转小写

7 test

bash 复制代码
test = [] ##[] 就相当于test命令
"test $a = $b" = [ "$a" = "$b" ]

7.1 test数字对比

bash 复制代码
=
!=
-eq ##等于
-ne ##不等于
-le ##小于等于
-lt ##小于
-ge ##大于等于
-gt ##大于

7.2 test的条件关系

bash 复制代码
-a ##并且
-o ##或者

7.3 test对空的判定

bash 复制代码
-n ##nozero 判定内容不为空
-z ##zero 判定内容为空

7.4 test对于文件的判定

bash 复制代码
-ef ##文件节点号是否一致(硬链)
-nt ##文件1是不是比文件2新
-ot ##文件1是不是比文件2老
-d ##目录
-S ##套结字
-L ##软连接
-e ##存在
-f ##普通文件
-b ##快设备
-c ##字符设备

8 && ||

bash 复制代码
&& # 符合条件作动作
bash 复制代码
|| # 不符合条件作动作

9 shell脚本

9.1 显示网卡ip

bash 复制代码
ifconfig ens160 | head -n 2 | tail -n 1 | cut -d " " -f 10

9.2 显示登录系统UID最大的用户

bash 复制代码
cat /etc/passwd | grep "/home" | sort -n -t : -k 3 | cut -d : -f 1 | tail -n 1

9.3 判断用户类型

user_check.sh 用户

用户类型为

super user

system user

common user

相关推荐
xmweisi024 分钟前
Ansible内置模块之package
linux·ansible·rhce·rhca·红帽认证·it培训
xmweisi025 分钟前
Ansible内置模块之service
linux·ansible·rhce·rhca·红帽认证
大神的风范10 分钟前
从0开始学linux韦东山教程第一三章问题小结(1)
linux·服务器
liuze4081 小时前
使用 docker 安装 nacos3.x
运维·docker·容器
橙色小博1 小时前
Python中的re库详细用法与代码解析
linux·python·正则表达式·php·re
10000hours1 小时前
【SGL】Scatter-Gather List内存传输技术
linux·数据结构·网络协议·list·存储·sgl
某不知名網友2 小时前
linux_进程地址空间(虚拟地址空间)
java·linux·算法
白总Server2 小时前
微软系统 红帽系统 网络故障排查:ping、traceroute、netstat
linux·运维·服务器·microsoft·中间件·架构·github
家庭云计算专家2 小时前
一键设置动态域名+ipv6内网直通访问ssh服务-家庭云计算专家
运维·docker·容器·云计算·ssh·onlyoffice
朝新_2 小时前
【Linux操作系统】第一弹——Linux基础篇
linux·服务器·网络