shell中常用的基本命令(diff、patch、cut、sort、uniq、&&与||、test、tr)

shell中常用的基础命令(diff、patch、cut、sort、uniq、tr、test、&& ||) shell常用的基础命令一、diff 一、diff 作用:比较不同 用法: diff [options] file|dir file|dir ##比较文件与文件的不同,或者目录与目录的不同 输出信息: [num1,num2] [a|c|d] [num3,num4] 其意为第一个文件中的行添加、更改、删除相应内容即可与第二个文件一致 num1,num2 第一个文件中的行 a 添加 c 更改 d 删除 < 第一个文件中的内容 > 第二个文件中的内容 阅读详情

diff 命令(比对文件)

名称方法
不检查空格字符的不同diff -b
不检查空白行diff -B
显示全部内文,并标出不同之处diff -c
不检查大小写的不同diff -i
若比较的文件为 C 语言的程序码文件时,显示差异所在的函数名称diff -p
仅显示有无差异,不显示详细的信息diff -q
比较子目录中的文件diff -r
以合并的方式来显示文件内容的不同diff -u
[root@shell_jichu mnt]# vim file
[root@shell_jichu mnt]# cat file
westos	hellow
text
[root@shell_jichu mnt]# vim file1
[root@shell_jichu mnt]# cat file1
westos	hellow
cai
[root@shell_jichu mnt]# diff file file1
2c2
< text
---
> cai

在这里插入图片描述

patch命令(打补丁)

名称方法
备份每一个原始文件patch -b
后面可以接“取消几层目录”的意思patch -p
代表还原,将新的文件还原成原来旧的版本patch -R
[root@shell_jichu mnt]# yum repolist 
已加载插件:langpacks
rhel_dvd                                                 | 4.1 kB     00:00     
(1/2): rhel_dvd/group_gz                                   | 136 kB   00:00     
(2/2): rhel_dvd/primary_db                                 | 3.9 MB   00:00     
源标识                     源名称                                          状态
rhel_dvd                   Remote classroom copy of dvd                    4,751
repolist: 4,751
[root@shell_jichu mnt]# 
[root@shell_jichu mnt]# yum install patch -y
已加载插件:langpacks
正在解决依赖关系
--> 正在检查事务
---> 软件包 patch.x86_64.0.2.7.1-8.el7 将被 安装
--> 解决依赖关系完成

依赖关系解决

================================================================================
 Package        架构            版本                    源                 大小
================================================================================
正在安装:
 patch          x86_64          2.7.1-8.el7             rhel_dvd          110 k

事务概要
================================================================================
安装  1 软件包

总下载量:110 k
安装大小:210 k
Downloading packages:
patch-2.7.1-8.el7.x86_64.rpm                               | 110 kB   00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安装    : patch-2.7.1-8.el7.x86_64                                    1/1 
  验证中      : patch-2.7.1-8.el7.x86_64                                    1/1 

已安装:
  patch.x86_64 0:2.7.1-8.el7                                                    

完毕!
[root@shell_jichu mnt]# diff -u file file1 > file.path
[root@shell_jichu mnt]# ls
file  file1  file.path
[root@shell_jichu mnt]# patch -b file  file.path 
patching file file
[root@shell_jichu mnt]# cat file
westos	hellow
cai

在这里插入图片描述

cut命令(截取字符)

名称方法
指定分隔符cut  -d
截取1和4列cut  -f 1,4
指定截取的字符位置cut  -c 1-4
[root@shell_jichu mnt]# cp -p /etc/passwd /mnt/passwd
[root@shell_jichu mnt]# ls
file  file1  file1.rej  file.orig  file.path  passwd
[root@shell_jichu mnt]# vim passwd 
[root@shell_jichu mnt]# cut -d : -f 3 passwd 
0
1
2
3
4
5
6
7
8
42
993
72
[root@shell_jichu mnt]# cut -d : -f 1-3 passwd 
root:x:0
bin:x:1
daemon:x:2
adm:x:3
lp:x:4
sync:x:5
shutdown:x:6
halt:x:7
mail:x:8
gdm:x:42
gnome-initial-setup:x:993
tcpdump:x:72


在这里插入图片描述

sort(字符排序)

名称方法
纯数字排序sort  -n
倒序sort  -r
去掉重复数字sort  -u
输出到指定文件中sort  -o
指定要排序的列sort  -k
指定分隔符sort  -t
[root@shell_jichu mnt]# vim num
[root@shell_jichu mnt]# cat num 
1
5
6
22
22
62
15
51
65
1
4
4
565

165
[root@shell_jichu mnt]# sort num 

1
1
15
165
22
22
4
4
5
51
565
6
62
65
[root@shell_jichu mnt]# sort -n num 

1
1
4
4
5
6
15
22
22
51
62
65
165
565
[root@shell_jichu mnt]# sort -nr num 
565
165
65
62
51
22
22
15
6
5
4
4
1
1

[root@shell_jichu mnt]# sort -nru num 
565
165
65
62
51
22
15
6
5
4
1

在这里插入图片描述

uniq(处理重复的字符)

名称方法
显示唯一的行uniq  -u
显示重复的行uniq  -d
每行显示一次并统计重复次数uniq  -c
 每行仅显示一次,并且显示出现的次数
[root@shell_jichu mnt]# sort -n num | uniq -c
      1 
      2 1
      2 4
      1 5
      1 6
      1 15
      2 22
      1 51
      1 62
      1 65
      1 165
      1 565
显示重复的行并且进行排序
[root@shell_jichu mnt]# sort -n num | uniq -d 
1
4
22
显示唯一的行并且排序
[root@shell_jichu mnt]# sort -n num | uniq -u

5
6
15
51
62
65
165
565

&&命令和||命令

&&————(表示true条件为真):用来执行条件成立后执行的命令
||—————(表示false条件为假):用来执行条件不成立后执行的命令

test命令——用来检测某个条件是否成立

test "A&quot;==&quot;A"=="B” 等同 [ "A&quot;==&quot;A"=="B" ]
名称方法
相等[ ‘A’ = ‘B’ ]
不相等[ ‘A’ != ‘B’ ]
等于[ ‘A’ -eq ‘B’ ]
不等于[ ‘A’ -ne ‘B’ ]
不大于[ ‘A’ le ‘B’ ]
小于[ ‘A’ lt ‘B’ ]
不小于[ ‘A’ ge ‘B’ ]
大于[ ‘A’ gt ‘B’ ]
都满足才成立A -a B
满足一个成立A -o B
判断是否为空,空为真,非空为假-z “$A”
和条件相反就是真,非空为真,空为假-n “$A”
判断前后两个文件是否互相为硬链接[“file1” -ef “file2” ]
判断前面的硬链接是否与新[“file1” -nt “file2” ]
判断前面的硬链接是否旧[“file1” -ot “file2” ]
判断文件是否存在[-e “file” ]
判断文件是否为普通文件[-f “file” ]
是否为软链接[-L “file” ]
判断是否为套接字[-S “file” ]
判断是否为块设备[-b “file” ]
判断是否为目录[-d “file” ]
判断是否为字符设备[-c “file” ]

[root@shell_jichu mnt]# a=1;b=1
A等于B
[root@shell_jichu mnt]# [ “a&quot;=&quot;a&quot; = &quot;a"="b” ] && echo yes || echo no
yes
A等于B
[root@shell_jichu mnt]# [ “a&quot;−eq&quot;a&quot; -eq &quot;a"−eq"b” ] && echo yes || echo no
yes
[root@shell_jichu mnt]# a=2;b=1
A不等于B
[root@shell_jichu mnt]# [ “a&quot;!=&quot;a&quot; != &quot;a"!="b” ] && echo yes || echo no
yes
A不等于B
[root@shell_jichu mnt]# [ “a&quot;−ne&quot;a&quot; -ne &quot;a"−ne"b” ] && echo yes || echo no
yes
A大于等于B
[root@shell_jichu mnt]# [ “a&quot;−ge&quot;a&quot; -ge &quot;a"−ge"b” ] && echo yes || echo no
yes
A大于B
[root@shell_jichu mnt]# [ “a&quot;−gt&quot;a&quot; -gt &quot;a"−gt"b” ] && echo yes || echo no
yes
A小于等于B
[root@shell_jichu mnt]# [ “a&quot;−le&quot;a&quot; -le &quot;a"−le"b” ] && echo yes || echo no
no
A小于B A小于B
[root@shell_jichu mnt]# [ “a&quot;−lt&quot;a&quot; -lt &quot;a"−lt"b” ] && echo yes || echo no
no
在这里插入图片描述

tr——转换大小写

[root@shell_jichu mnt]# echo qwertyuiop | tr ‘a-z’ ‘A-Z’
QWERTYUIOP
[root@shell_jichu mnt]# echoASDFGHJKL | tr ‘a-z’ ‘A-Z’
bash: echoASDFGHJKL: 未找到命令…
[root@shell_jichu mnt]# echoASDFGHJKL | tr ‘A-Z’ ‘a-z’
bash: echoASDFGHJKL: 未找到命令…
[root@shell_jichu mnt]# echo ASDFGHJKL | tr ‘A-Z’ ‘a-z’
asdfghjkl
[root@shell_jichu mnt]# echo ASDFGHJKL | tr ‘a-z’ ‘A-Z’
ASDFGHJKL
在这里插入图片描述

保姆级教程:用北醒TFmini-i-CAN雷达给PixHawk飞控加装‘眼睛’,实现自动避障与定高 经过多次测试,前向雷达的最佳安装位置是机架前部下方5-10cm处,倾斜角度20-30度。电源方面,建议为CAN设备单独供电,避免电机启动时的电压骤降导致数据异常。北醒TFmini-i-CAN雷达与PixHawk飞控的组合,为DIY爱好者打开了低成本实现智能避障的大门。实际部署时,需确保整个CAN网络的波特率一致(TFmini-i默认为250kbps),每个设备具有唯一ID。雷达的安装角度也直接影响检测效果,建议通过3D打印支架将雷达向前下方倾斜15-30度。当使用多个雷达时,需为每个设备创建独立的参数组。 阅读详情

相关推荐

Altium Designer学习---如何进行SI仿真

Altium designer 如何进行SI仿真。         1、仿真电路中需要至少一块集成电路;             2、器件的IBIS模型;              3、在规则中必须设定电源网络和地网络;              4、建立SI规则约束;              5、层堆栈必须设置正确,电源平面必须连续;     建立的文件必须是一个工程,并把相应的文件放在工程目...

weixin_34050519的博客 4902

diff命令详解

diff命令详解 转自:http://www.flatws.cn/article/program/shell/2011-02-23/14053.html 一、文本文件比较命令diffdiff -Nuar linux-3.0 linux-3.0 > linux-3.0-s3c2440.patch diff命令,在制作patch文件的时候,基本上只需要使用到diff -N

yi412的专栏 7607

变邻域搜索(VNS)原理梳理和应用细节-附求解VRPTW问题C++代码

文章目录1、简介-introduction2、VNS的基本机制2.1 变邻域下降方法-Variable Neighborhood Descent2.2基本变邻域搜索方法-Basic Variable Neighborhood Search2.3 终止准则3、VNS的拓展和混杂算法3.1 VNS的拓展3.2 变邻域分解搜索-Variable Neighborhood Decomposition Search3.3 偏变邻域搜索-Skewed VNS3.4 并行变邻域搜索-Parallel VNS4、VNS和其

dragon Fly的博客 6826

diff和patch的使用

diff -uNr xxx xxx.1 > diff.patch 比较两个文件夹中所有文件差异 patch -p1 xxx 上

曼云-->孤峰 677

R语言,charls数据库清洗、基线特征描述、logistics回归、rcs模型、森林图

【代码】R语言,charls数据库清洗、基线特征描述、logistics回归、rcs模型、森林图。

2402_87751128的博客 2512

【日常小结】项目Modbus RTU 协议

Modbus RTU(远程终端) 协议 一、前言 最近因为码跺宽度测量项目推广升级,更换了摄像头(换成了基恩士摄像头)和光栅(换成了施莱格05LCM系列光栅),导致原来的程序用不了了,然而这个软件升级的任务落到了我身上,作为机械非科班出身的我要学习TCP和Modbus RTU通信协议,也算是自我突破了。本文只对Modbus/RTU/HEX 进行简单的小结。 二、Modbus Modbus是一种串行通信协议,是Modicon公司(现在的施耐德电气Schneider Electric)于1979年为使用可编程逻

weixin_39681471的博客 831

Shell脚本中的常用命令-----diff和patch

Shell脚本中的常用命令-----diff和patch 1.diff命令的用法 diff 参数 对象一 对象二 以后面的对象作为标准,去比较前面的对象相对于后面对象来说有什么不同。 < ##表示第一个对象的内容 > ##表示第二个对象的内容 a ##表示添加 c ##表示更改 d ##表示删除 常用参数: -b ##表示忽略空格 -B ...

xrt0211的博客 539

[关系图谱] 二.Gephi导入共线矩阵构建作者关系图谱

本文主要讲解Gephi绘制作者间的关系图谱,该软件可以广泛应用于社交网络、知识图谱分析,推荐读者使用。这是非常基础的一篇文章,重点讲解Gephi使用方法,希望对大家有所帮助。

杨秀璋的专栏 1万+

shell脚本常用基础命令(diff path cut sort)1

diff 用法 一般作补丁,用补丁的方式更新脚本 Usage: diff [OPTION] files|dir 输出信息: 【num1,num2】a|c|d 【num3,num4】 之前是第一个文件的行 之后是第二个文件的行 a 添加 c 更改 d 删除 <第一个文件的内容 ">"第二个文件的内容 a添加 [root@docker3 mnt]# vim yan [root@docker3 mnt]# cat yan > yan1 [root@docker3 mnt]# ls yan y

Redhat_yan 1233

B07:AI 时代怎么考核团队?我把 KPI 改了 5 版才找到答案

最后说一句掏心窝的话。绩效考核不是"管人"的工具,是"引导团队行为"的工具。你定什么指标,团队就会做什么行为。你定"AI 占比",团队就凑占比你定"效率提升",团队就挑软柿子你定"代码行数",团队就刷行数你定"工具使用率",团队就刷使用只有定"业务价值 + 工程质量 + 能力成长"三个维度的指标,团队才会真正关注长期价值。这套 KPI,我在我带的团队里跑了 6 个月,没有任何一个指标被"刷"出来。考核的是结果,不是过程。永远考核"创造了多少价值",永远不考核"用了多少 AI"。

刘一说的IT专栏 499

【精细解读】xapp585(多通道LVDS接口ADC)

xapp585的参考设计有Verilog和VHDL两种源码。

FPGA艺术家的博客 532

DiffNR 技术文档:在 Win 11中 使用 CUDA 11.8

本文记录 DiffNR 论文复现的完整过程,包括环境搭建、参数核对、训练失败原因分析、代码修正、离线训练命令、最终结果和可视化生成方法。

surpface的博客 454

《爬虫和逆向教程》 - 专栏介绍和目录

本专栏为爬虫初学者和进阶开发者量身定制的爬虫和逆向学习园地。为你提供全面而深入的爬虫和逆向技术指导,从入门到精通,从基础理论到高级实战,助你在数据的海洋中畅游,挖掘出有价值的信息。通过本专栏的学习,你将具备独立开发和优化爬虫程序的能力,及逆向分析能力和项目开发能力,成为爬虫领域的佼佼者。

数据知道的博客 2万+

shell脚本编写之常用基础命令(diff、patch、cut、sort、uniq、&&与||、test、tr)

文章目录一、shell(计算机壳层)二、shell中常用的基本命令1、diff 命令(比对文件)1.1 基本概念以及命令的格式1.2 结果读取方式1.3 diff中常用的参数2、patch命令(打补丁)2.1基本概念以及命令的用法2.2patch常用参数3、cut命令(字符截取) 一、shell(计算机壳层) 在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(...

ranrancc_的博客 733

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

shell 脚本中的常用命令(diff、patch、cut、sort、uniq、tr、&&与||、test)

diff和patch diff通常比较文件的内容,patch常用来打补丁 1.diff的输出信息: [num1,num2] [ a | c | d ] [num3,num4] num1,num2 第一个文件中的行 a 添加 c 更改 d 删除 < 第一个文件中的内容 > ...

zxn_0823的博客 542

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

shell中常用的基础命令1(diff、patch、cut、sort、uniq、tr、test)

文章目录1. shell中常用的基础命令1.1 diff(用于对比不同)1.直接打开vim对比2.diff对比输出信息3.diff对比常用参数1.2 patch(打补丁)1.patch的安装2.patch的常用参数1.3 cut(截取数据)1.cut的常用参数2.截取某一列的数据3.截取字符间数据1.4 sort1.5 uniq1.6 tr1.7 && ||1.8 test 1. ...

Aimee_c的博客 733

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Shell中常用命令整理(diff、patch、cut、sort、uniq、tr、test、&&、||)

文章目录1、diff可以使用vimdiff进行比较:直接使用diff命令进行比较diff常用参数:2、patch3、cut4、sort5、uniq6、tr7、&&和||8、test 1、diff diff命令用于对比两个文件的不同。 demo: 可以使用vimdiff进行比较: 对于实验所用文件,直接使用命令vimdiff xxx.conf xxx.conf.new 来对比两者的不同: 可以看到,两文件在使用vimdiff进行对比时,两文件的不同之处会高亮显示,可用于日常排错。 vimd

qq_42564122的博客 627

35. Shell脚本的基本命令(diff, patch, cut, sort, uniq, test, &&, || )

Lesson35 Shell的文本处理正则表达式(grep,sed,awk ——Linux三剑客) 文章目录1. 什么是Shell(计算机壳层)1. 什么是Shell 1. 什么是Shell(计算机壳层) 在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(命令解析器) 它类似于DOS下的command.com和后来的cmd.exe,它接收用户命令,然后调用相应...

qq_43687755的博客 663

shell中常用的基础命令(diff;patch;cut;sort;uniq;tr;&&;||;test;)

1.diff 用法: diff [options] files|directorys 输出信息: [num1,num2][a|c|d][num3,num4] num1,num2 ##第一个文件中的行 a ##添加 c ##更改 d ##删除 < ##第一个文件中的内容 ##第二个文件中的内容 num3,num4 ##第二个文件中的行 常用参数: -b ##忽略空格 -B ##忽略空行 -i ##忽略大小写 -c ##显示文件所有内容并标示不同 -r ##对比目录 -u ##合并输出

ninimino的博客 261

shell 脚本中常用命令(diff、cut、patch、sort、uniq、&&和||、test)

1.diff 命令 (1)diff命令的用法: diff 命令是用来比较两个文件或目录的不同 diff [options] target1 target2 diff file1 file2 diff direcory1 directory2 (2)diff 在比较文件过程中结果读取方式 [num1 , num2][a|c|d][num3,num4] num1,num2 表示在第一个文件中的行...

Sparks _Fly 548

shell脚本常用命令讲解(diff、patch、cut、sort、uniq、test、tr、&&、||)

一、diff命令 1、概念知识 diff用来比较两个文件。diff分析两个文件,并输出两个文件的不同的行。diff的输出结果表明需要对一个文件做怎样的操作之后才能与第二个文件相匹配。diff并不会改变文件的内容,但是diff可以输出一个ed脚本来应用这些改变。 2、diff中常用参数 -b或–ignore-space-change 不检查空格字符 -B或–ignore-blank-...

CapejasmineY的博客 1011

shell脚本常用命令(diff、cut、patch、sort、uniq、tr、&& 、||和test命令详解)

shell diff diff 【options】A B 比较两个文件或目录的不同 基本格式 [num1,num2][a|c|d][num1,num2] 第一个文件中的行数 读二个文件中的行数 a添加 c更改 d删除 输出 <表示第一个文件中的内容 >表示第二个文件中的内容 2.4c2.4 改变第一个文件中的第二行和第四行才能匹配第二个文件中的的第二行和第四行 1a1 添加...

myhyyyyyy的博客 783

【Linux学习笔记27】Shell常用基础命令详解(diff、patch、cut、sort、uniq、tr、&&、||、test)

文章目录1. diff 比较文本文件1.1 diff 输出信息解释1.2 diff 参数详解1.3 diff 命令使用示例2. patch 补丁3. cut 显示文件指定内容3.1 cut 参数3.2 cut 用法示例4. sort 排序4.1 sort 参数4.2 sort 示例用法5. uniq 忽略重复行6. tr 替换、压缩和删除字符7. && 与 ||8 test 测试8.1 test数字对比8.2 test条件关系8.3 test对空的判定8.4 test对于文件的判定 1. d

weixin_46069582的博客 327

shell脚本中常用的命令(diff,patch,cut,sort,uniq,tr,test,&&和||)

一、diff diff命令是用来比较两个文件或者目录的不同 diff [options] target1 target2 diff file1 file2 diff directory1 diirectory2 diff在比较文件过程中结果读取方式 [num1,num2][a|c|d][num3,num4] num1,num2表示在第一个文件中的行数 a 表示添加 ---add ...

qq_41977453的博客 341

一、shell中常用的基础命令(diff、patch、cut、uniq、tr、test、&&||)

一、diff 1.用法 diff [options] files|directorys 2.输出信息 [num1,num2][a|c|d][num3,num4] ~ ~ num1,num2 第一个文件中的行 a 添加 c 更改 d 删除 < 第一个文件中的内容 > 第二个文件中的内容 num3,num4 第二个文件中的行 3.常用参数 ~ ~ -b 忽略空格 -B 忽略空行 -i 忽略大小写 -c 显示文件所有内容并标示不同

qwejiaji的博客 265

shell中的常用基础命令——diff、patch、cut、sort、uniq、tr、test

文章目录一、diff二、patch三、cut四、sort五、uniq六、tr七、test1. &&  ||2. test 一、diff 作用:diff命令常用来比较文件内容 用法:diff  [options]  files|directorys 输出信息:[num1,num2][a|c|d][nmu3,num4] (1)num1,num2:第一个...

qq_45225437的博客 413
上一篇: Linux系统之防火墙(iptables)
下一篇: shell中的文本处理正则表达式(grep+sed+awk)
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值