Linux快捷命令

news2025/1/10 23:57:17

目录

一、快捷排序——sort

常用选项: 

示例

二、快捷去重——uniq

常用选项: 

示例:

​编辑

​编辑

​编辑

三、快捷替换——tr 

用于windows的编写的脚本格式转换为Linux格

方法一:

方法二:

四、快速裁剪命令——cut 

五、文件拆分——split

六、文件合并——paste

七、变量扫描器——eval

示例:


一、快捷排序——sort

以行为单位,对文件的内容进行排序

格式:   sort   [选项]   参数

常用选项: 

-n按照数字的大小进行排序

-r

倒序排序(配合-n使用)
-u相当于下面的那个命令uniq,去重复的行(只保留一行重复内容)
-t指定字段的分隔符
-k指定排序的字段
-o<输出文件>另保存输出排序的结果(相当于重定向输出)
-f忽略大小写,把小写字母也当作大写字母看待
-b忽略每行前面的空格

示例

sort  -n    
sort  -n  -r

sort  -u

sort  -o 

二、快捷去重——uniq

uniq命令用于报告或者忽略文件中连续的重复行,常与sort命令结合使用

格式:

uniq [选项] 参数  ​
cat 文件| uniq 选项

常用选项: 

-c统计连续重复的行的次数,并且合并重复的行
-u显示仅出现一次的行(包括不连续的重复行)
-d仅显示重复出现的行(必须是连续的重复行)

示例:

uniq  -c 

uniq  -u

uniq  -d

需求:在/var/log/secure中记录着ssh登录的信息(其中也包含着登录失败的消息),我们认为密码输错三次,是一种外界入侵进行破译的过程,此刻写一个相关的脚本对输错三次的ssh登录主机进行禁用(登录禁用的文件在/etc/hosts.deny)

三、快捷替换——tr 

常用来对来自标准输入的字符进行替换,压缩,和删除

格式: cat 文件| tr [选项] 参数 
-c保留字符集1的字符,其他字符包括换行符\n用字符集2替换
-d删除所有属于字符集1的字符
-s将连续重复的字符串压缩成一个
-t字符集2 替换 字符集1,不加选项效果相同

tr-c

tr  -d 

 tr  -s

tr -t       #与默认效果相同

用于windows的编写的脚本格式转换为Linux格

Linux中遇到了换行符(“\n”)会进行回车加换行的操作,回车符反而只会作为控制字符(“^ M”)显示,不发生回车的操作。而windows中要回车加换行符(“\r\n”)才会发生回车加换行的操作,缺少一个控制符,或则顺序不对都不能另一行

方法一:

[root@localhost tr]#cat window.sh |tr -d "\r" >windows
 
或则
 
[root@localhost tr]#cat window.sh |tr -s  "\r"  "\n" >windows

方法二:

下载格式转换工具:dos2unix 

yum  install -y dos2unix
 
#使用格式
dos2unix    文件名

四、快速裁剪命令——cut 

对字段进行截取和剪裁

格式: 

格式一:cut [选项] 参数

格式二:cat file | cut [选项] 参数 
d指定分隔符(默认分隔符为Tab)
-f 按字段进行截取。指定第n个字段;n-m表示从第n个字段到第m个字段;a,b,c表示第a、第b、第c个字段
-b以字节为单位进行截取
-c以字符为单位进行截取
–complement排除所指定的字段
–output-delimiter更改输出内容的分隔符
[root@localhost tr]#cut -d ':' -f 1-3 /etc/passwd

[root@localhost tr]#head -n 2 /etc/passwd|cut -d ':'  --complement  -f 2

[root@localhost tr]#head -n 2 /etc/passwd|cut -d ':'  -f 1-5 --output-delimiter='@'

五、文件拆分——split

split命令用于在Linux下将大文件拆分为若干小文件

格式:split 选项 参数 原始文件 拆分后文件名前缀
-l指定行数
-b指定文件的大小
[root@localhost tr]#split -l 20 test2.txt   sc

六、文件合并——paste

按照字段来进行文件的合并

格式:paste   [选项]    文件1     文件2
-d用于指定文件的分隔符(默认情况下为制表符"\n")
-s将列和行的内容进行互相交换

示例:指定两个文件的第二列进行列合并 

[root@localhost tr]#cat a   b
1   2    3
2   3    4
2   1    2
4   3    4
2   1    3
12  1    3
12  11   21
11  12   34
 
a  b  c
c  b  a
d  e  f
f  d  e
f  h  j
g  k  l
1  2  3
[root@localhost tr]#cat b|awk '{print $2}' >c
[root@localhost tr]#cat a|awk '{print $2}' >d
[root@localhost tr]#paste  c  d
b	2
b	3
e	1
d	3
h	1
k	1
2	11
	12

七、变量扫描器——eval

命令字前加上eval,shell会在执行命令之前扫描它两次,eval命令首先会先扫描命令行进行所有的置换,然后再执行命令,该命令适用于那些一次扫描无法实现功能的变量,该命令会对变量进行两次扫描

示例:

#!/bin/bash
 
#这是一个验证eval扫描的脚本
a=100
b=a
 
echo  "普通echo输出的变量b的值为:"  \$$b
eval echo "经过eval扫描输出变量b的值为:" \$$b

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/513850.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

JAVA double精度丢失问题

double类型精度丢失问题&#xff1a; 0.1*0.1使用计算器计算是0.01&#xff0c;代码里却是0.010000000000000002 public class HelloWorld {public static void main(String []args) {double number1 0.1;double number2 0.1;double result number1 * number2 ;System.o…

CSP-S 2022 提高级 第一轮 阅读程序(1) 第16-21题

【题目】 CSP-S 2022 提高级 第一轮 阅读程序&#xff08;1&#xff09; 第16-21题 01 #include <iostream> 02 #include <string> 03 #include <vector> 04 05 using namespace std; 06 07 int f(const string &s, const string &t) 08 { …

关于cartographer建立正确关系树的理解

正确的TF关系map----odom----base_link----laser base_link是固定在机器人本体上的坐标系&#xff0c;通常选择飞控 其中map–odom 的链接是由cartographer中lua文件配置完成的 map_frame "map", tracking_frame "base_link", published_frame "b…

Ubuntu 20.04 安装 mysql8 并配置远程访问

文章目录 一、使用 apt-get 安装 mysql 服务二、初始化 mysql 数据库管理员用户密码三、配置远程访问 一、使用 apt-get 安装 mysql 服务 # 更新软件源 apt-get install update# 安装mysql服务 apt-get install mysql-server# 使用mysqladmin工具查看mysql版本 mysqladmin --v…

一文解析Linux进程的睡眠和唤醒

Linux进程的睡眠和唤醒 在Linux中&#xff0c;仅等待CPU时间的进程称为就绪进程&#xff0c;它们被放置在一个运行队列中&#xff0c;一个就绪进程的状 态标志位为 TASK_RUNNING。一旦一个运行中的进程时间片用完&#xff0c; Linux 内核的调度器会剥夺这个进程对CPU的控制权&…

燃气巡检二维码

对燃气公司的输气管道和阀井等设施的巡检工作的管理目标是能降低成本、提高工作效率以及管理水平。但用纸质记录的方式进行燃气设备巡检有以下缺点&#xff1a; 1、难保证巡检真实性 无法客观、方便地掌握巡检人员巡检的到位情况&#xff0c;因而无法有效地保证巡检工作人员按计…

软件兼容性测试如何进行?怎么选择靠谱的软件检测公司?

软件兼容性测试是一项非常重要的工作&#xff0c;能够确保在不同的操作系统、设备、浏览器以及其他软件环境下&#xff0c;软件应用都能够正常运行。 一、软件兼容性测试如何进行? 确定测试的环境&#xff0c;包括操作系统、设备、浏览器等&#xff0c;并建立测试用例和测试…

Maven必要知识

参考笔记&#xff1a; https://www.wolai.com/arAiYJYCr6Kkfi2kZ8HxE8 1. Maven 概述 1.1 什么是 Maven Maven 是 Apache 软件基金会组织维护的一款专门为 Java 项目提供构建和依赖管理支持的工具。 Maven 作为依赖管理工具 jar 包的管理jar 包的来源jar 包之间的依赖关系…

使用R语言绘制折线图

R语言绘制折线图 一、绘制折线图1.载入bruceR&#xff08;ggplot2&#xff09;2.设置当前工作目录3.载入数据集4.查看数据结构5.绘制基础图形6.图形优化 二、绘制多重折线图1.载入数据2.绘制图形 一、绘制折线图 1.载入bruceR&#xff08;ggplot2&#xff09; &#xff08;要…

【HAL库】STM32CubeMX开发----非阻塞延时实验----SysTick(滴答定时器)中断

STM32CubeMX 下载和安装 详细教程 【HAL库】STM32CubeMX开发----STM32F103/F207/F407----目录 前言 HAL库 有自带的 ms级 延时函数&#xff1a; HAL_Delay(); 缺点&#xff1a; 这是阻塞延时方式&#xff0c;就是延时期间&#xff0c;什么都不能干&#xff0c;这样很浪费资源。…

便携式车用CAN分析仪

产品简介 USBCAN-C系列便携式车用CAN分析仪&#xff0c;通过USB接口快速扩展一路CAN通道&#xff0c;使接入CAN网络非常容易&#xff0c;它具有一体式和小巧紧凑的外形&#xff0c;特别适合于随身携带。CAN接口采用金升阳电源模块和信号隔离芯片实现2500V DC电气隔离&#xff0…

能源设备智能维修AR远程作业指导平台降低运营成本

AR远程专家指导系统是一种基于AR增强现实技术搭建的远程协作解决方案&#xff0c;它可以让专家全视角掌握操作现场&#xff0c;并将专精知识和技能传递给远程现场的工作人员&#xff0c;以帮助他们解决各种技术难题和困难&#xff0c;赋能各行各业行业。 现场人员通过手机、平板…

OJ练习第104题——格雷编码

格雷编码 力扣链接&#xff1a;89. 格雷编码 题目描述 n 位格雷码序列 是一个由 2n 个整数组成的序列&#xff0c;其中&#xff1a; 每个整数都在范围 [0, 2n - 1] 内&#xff08;含 0 和 2n - 1&#xff09; 第一个整数是 0 一个整数在序列中出现 不超过一次 每对 相邻 整数…

数据流图(DFD)这么理解吗?

如何画好数据流程图&#xff08;DFD&#xff09;&#xff1f; 步骤&#xff1a; 确定系统的 input 和 output。由 表层 到 深层 画系统的顶层数据流图。自顶向下 逐层 分解&#xff0c;画出分层数据流图。 一、理解数据流图 基本概念 ~~ 数据流图 数据流&#xff08;箭头&…

linux pinctrl 和 gpio 子系统 LED驱动

pinctrl 和 gpio 子系统 借助 pinctrl 和 gpio 子系统来简化 GPIO 驱动开发 pinctrl 子系统 pinctrl 子系统&#xff08;drivers/pinctrl&#xff09;的主要工作内容&#xff1a; ①、获取设备树中 pin 信息。 ②、根据获取到的 pin 信息来设置 pin 的复用功能 ③、根据获…

校招失败后,4面字节跳动软件测试工程师,竭尽全力....

下面是我面试字节跳动软件测试工程师的面试经验总结&#xff0c;希望能帮助到你们。 面试一 简单做一下自我介绍简要介绍一下项目/你负责的模块/选一个模块说一下你设计的用例get请求和post请求的区别如何判断前后端bug/3xx是什么意思说一下XXX项目中你做的接口测试/做了多少次…

免费润色文章的软件-自动修改文章润色的软件

免费润色文章的软件 免费润色文章的软件可以帮助用户快速地改善文本质量&#xff0c;进一步提高语言表达能力和流畅性&#xff0c;以下是其主要优势&#xff1a; 高效性&#xff1a;免费润色文章的软件能够快速进行润色处理&#xff0c;为用户节省时间和精力。相比手动润色的方…

瑞芯微RK3588核心板远程会诊等医学解决方案

RK3588处理器在医学领域的应用中&#xff0c;可以为远程会诊提供高性能和可靠的解决方案。以下是基于RK3588的远程会诊医学方面的解决方案&#xff1a; 远程高清图像传输&#xff1a; 利用RK3588处理器的高性能图像处理能力和高速网络接口&#xff0c;实现高清医学图像的实时传…

Dubbo 基于xml文件分析主流程源码 (4)

目录 前提 JDK实现SPI Dubbo实现SPI Dubbo源码 1. 找到Dubbo的命名空间处理类&#xff0c;也就是Dubbo的入口类 2. 将dubbo标签交给spring进行管理&#xff0c;就是从 BeanDefinition----> Bean的过程。 3. 服务暴露 4. 服务引入 总结 仿写Dubbo 前提 1. Dubbo源码…

CentOS7 yum update y更新后黑屏解决方案

解决方法 一 可以ssh访问 因为update的时候更新了系统内核&#xff0c;导致驱动问题&#xff0c;所以会黑屏。 更改一下yum的配置即可解决: vi /etc/yum.conf#增加&#xff1a;excludecentos-release*excludekernel*如果以上问题还未解决&#xff0c;可以试试下面的方法 其…