Linux系统工程师4--1.shell中常用的基础命令

本文详细介绍了Linux中常用的命令,包括diff用于比较文件差异,patch应用补丁更新文件,cut用于截取文件内容,sort进行排序,uniq处理重复行,逻辑操作符如&&和||进行条件判断,tr进行字符转换,以及test进行条件测试。这些命令是Linux系统管理和自动化脚本中的基本工具,对于提升效率至关重要。
摘要由CSDN通过智能技术生成

目录

1.diff

2.patch

3.cut

4.sort

5.uniq 

6.&&  ||

7.tr

8.test


1.diff

用法:
diff  参数  file   file1  或  dir1  dir2
输出信息

[num1,num2]  [a|c|d]  [num3,num4]
num1,num2            #第一个文件中的行
a                             #添加
c                             #更改
d                             #删除
<                             #第一个文件中的内容
>                             #第二个文件中的内容
num3,num4            #第二个文件中的行   

常用参数:
-b                            #忽略空格
-B                           #忽略空行    
-i                             #对比时忽略大小写
-c                            #显示文件所有内容并标示有不同内容的行
-r                            #对比目录内容的不同
-u                           #合并输出

 

 

 

 

diff -u westos westos1 >westos.path    #生成补丁

2.patch

dnf install patch -y            #下载打补丁的工具
patch 原文件  补丁文件     #用补丁文件内容修改原文件内容,不使用-b原文件原先的内容会被覆盖并不会备份
-b            #备份原文件内容.orig

3.cut

-d  :           #指定:为分隔符
-f    
     5           #第5列
     3,5     #3到5列
     5-         #5列到最后一列
    -5          #第1列到第5列

-c              #指定截取的字符(-c  3 前三个字符,数字用法同-f)

 

 

 

 

 

4.sort

-n            #纯数字排序
-r             #倒叙
-u            #去掉重复
-o            #输出到指定文件
-t             #指定分隔符
-k            #指定排序的列

 

 

 

 

 

5.uniq 

配合sort使用

-c            #合并重复,统计重复个数
-d            #只显示重复的行
-u            #只显示唯一的行

 

6.&&  ||

&&           #符合条件做动作
||              #不符合条件做动作

ping   -c1 -w1  172.25.254.34 &> /dev/null  && echo 172.25.254.34 is up || echo 172.25.254.34 is down

#!/bin/bash    #命令运行环境的指定
vim test.sh
#!/bin/bash                
ping -c1 -w1 172.25.254.34 &> /dev/null &&{
        echo 172.25.254.34 is up
}||{
        echo 172.25.254.34 is down
}

检测输入的用户在系统中是否存在,存在显示用户is exist,不存在用户 is not exist
#!/bin/bash
id $1  &> /dev/null &&{
        echo $1 is exist
}||{
        echo  $1 is not exist
}

 

检测输入的数字是否在0-9以内
#!/bin/bash
[ "$1" -ge "0" -a "$1" -lt "10" ]  &&{
        echo $1 is in 0-9
}||{
        echo  $1 is not in 0-9
}

7.tr

tr 'a-z' 'A-Z'  < file    #把小写转换成大写
tr 'e'    'x' < file    #把e转换为x

8.test

test=[]                #[]就相当与test命令
"test $a = $b " = [ "$a" = "$b" ]          #括号两边必须有空格

test数字对比
=
!=
-eq        #等于
-ne        #不等于
-le         #小于等于
-lt          #小于
-ge        #大于等于
-gt         #大于

 

test的条件关系
-a        #并且
-o        #或者

test对空的判定
-n        #nozero判定内容不为空
-z        #zero  判定内容为空

test对于文件的判定
-e         #判定文件是否存在
-f          #判定目标是否是文件
-d         #判定目标是否是目录
-S        #套接字
-L        #软链接
-b        #块设备
-c        #字符设备
-ef       #文件节点号是否一致(硬链接)
-nt       #文件1是不是比文件2新
-ot       #文件1是不是比文件2老

 

 

 

 

 

 

编写脚本
如果脚本后未指定检测文件报错“input filename”
如果脚本后指定文件,但文件不存在报错“file is not exist”
当文件存在检测文件类型并输出

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
4S店客户管理小程序-毕业设计,基于微信小程序+SSM+MySql开发,源码+数据库+论文答辩+毕业论文+视频演示 社会的发展和科学技术的进步,互联网技术越来越受欢迎。手机也逐渐受到广大人民群众的喜爱,也逐渐进入了每个用户的使用。手机具有便利性,速度快,效率高,成本低等优点。 因此,构建符合自己要求的操作系统是非常有意义的。 本文从管理员、用户的功能要求出发,4S店客户管理系统的功能模块主要是实现管理员服务端;首页、个人心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理,用户客户端:首页、车展、新闻头条、我的。门店客户端:首页、车展、新闻头条、我的经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与4S店客户管理系统实现的实际需求相结合,讨论了微信开发者技术与后台结合java语言和MySQL数据库开发4S店客户管理系统的使用。 关键字:4S店客户管理系统小程序 微信开发者 Java技术 MySQL数据库 软件的功能: 1、开发实现4S店客户管理系统的整个系统程序; 2、管理员服务端;首页、个人心、用户管理、门店管理、车展管理、汽车品牌管理、新闻头条管理、预约试驾管理、我的收藏管理、系统管理等。 3、用户客户端:首页、车展、新闻头条、我的 4、门店客户端:首页、车展、新闻头条、我的等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流信息的查看及回复相应操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值