Shell脚本基础及基本常用命令
1.概述
脚本语言(shell、python):解释性语言,用解释器解释 运行效率低 |
c、java:描述性语言,运行效率高
以.sh结尾会有高亮显示
执行: sh hello.sh 或者 chmod +x hello.sh
再以绝对路径调用 /mnt/hello.sh
2.shell脚本
- 脚本是一种解释型语言
- 用 shell 脚本保存执行动作
- 用脚本判定命令的执行条件
- 用脚本来实现动作的批量执行
配置文件所加内容(在建立一个脚本的情况下按F4会添加信息)
脚本的信息
注释掉按F4添加信息,改为自动给新建的脚本添加注释
内容如下:
执行该脚本的情况
1.diff命令
diff 命令是用来比较两个文件或目录的不同
c –change d –delete
a –add
对文件进行补丁
补丁的同时进行备份
对目录的比较:
2.cut命令
cut 命令多用与字符截取
- cut -d 指定分隔符
- cut -f 1,7|1-7 指定截取的列 1,7(1和7) 1-7(1到7)
- cut -c 1,4|1-4 指定截取的字符位置
3.sort命令
多用于字符排序
sort -n 纯数字排序
sort
-r 倒序
sort -u 去掉重复数字
sort -o
输出到指定文件中
sort -t 指定分隔符
sort -k
指定要排序的列
4.uniq命令
对重复字符做相应的处理
- uniq -u 显示唯一的行
- uniq -d 显示重复的行
- uniq -c 每行显示一次并统计重复次数
5.&&和||运算符
&&
用来执行条件成立后执行的命令,|| 用来执行条件不成立后执行的命令
编写脚本判断ip是否存在
执行脚本:
6.test命令
test 命令和[ ]等同
test “B” 等同 [ “B” ]
[ “B” ]等于
[ “B” ]不等于
[ “B” ] 等于
[ “B” ] 不等于
[ “B” ] 小于等于
[ “B” ] 小于
[ “B” ] 大于等于
[ “B” ] 大于
[ “B” -a “B” ] ne表示不等于,a表示and都满足
[ “B” -o “B” ] o表示or至少满足一个 预科班
[ -z “A” ] 表示值不为空
[ “file1” -ef “file2” ] ef
表示节点是否相同
[ “file1” -nt “file2” ] 表示new,file1是否比file2文件新
[ “file1” -ot
“file2” ] 表示old,file1是否比file2文件老
[-e “file”] 文件是否存在
[-f “file”]
文件是否为普通文件
[-L “file”] 文件是否为符号链接
[-S “file”] 文件是否为套接字
[-b “file”]
文件是否为块设备
[-d “file”] 文件是否为目录
[-c “file”] 文件是否为特殊文件
判断两个数字是否相等
判断节点数是否相等
判断文件的新旧
编写脚本,输入一个数字判断是否在10以内
调用脚本:
编写脚本,判断文件是否存在,如果存在判断其类型
调用脚本:
7.tr命令
tr命令用于 大小写转换
编写脚本,判断输入的内容和hello是否相等
脚本调用:
解决方案:
脚本调用:
基本思路:
脚本调用:
Shell脚本基础及基本常用命令的更多相关文章
- shell脚本编写步骤及其常用命令和符号
1,什么是Shell Shell 是kernel的一个外壳,是一个命令解析器,负责用户与内核的交互.2,Shell脚本 Shell脚本类似于批处理,可以方便的执行大量命令.3,编写sh ...
- Shell编程(二)——shell的基础知识及常用命令
shell的基础知识 一.bash有以下特点: 1.记录命令历史 2.指令和文件名补全 3.别名 alias rm='rm -i' 4.通配符 * 0个或多个字符 ?匹配一个字符 5 输入输出重定向 ...
- Linux基础 - 系统优化及常用命令
目录 Linux基础系统优化及常用命令 Linux基础系统优化 网卡配置文件详解 ifup,ifdown命令 ifconfig命令 ifup,ifdown命令 ip命令 用户管理与文件权限篇 创建普通 ...
- Linux基础系统优化及常用命令
# Linux基础系统优化及常用命令 [TOC] ## Linux基础系统优化 Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令. - ...
- shell脚本-基础
shell脚本-基础 编程基础 程序是指令+ 数据 程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心,指令服务于数据 shell 程序提供了编程能力,解释执行. 计算运行二进 ...
- Linux shell脚本基础学习详细介绍(完整版)一
Linux shell脚本基础学习这里我们先来第一讲,介绍shell的语法基础,开头.注释.变量和 环境变量,向大家做一个基础的介绍,虽然不涉及具体东西,但是打好基础是以后学习轻松地前提.1. Lin ...
- Shell脚本基础学习
Shell脚本基础学习 当你在类Unix机器上编程时, 或者参与大型项目如k8s等, 某些框架和软件的安装都是使用shell脚本写的. 学会基本的shell脚本使用, 让你走上人生巅峰, 才怪. 学会 ...
- 运维 07 Linux系统基础优化及常用命令
Linux系统基础优化及常用命令 Linux基础系统优化 引言没有,只有一张图. Linux的网络功能相当强悍,一时之间我们无法了解所有的网络命令,在配置服务器基础环境时,先了解下网络参数设定命令 ...
- Linux Shell脚本入门--wget 命令用法详解
Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...
随机推荐
- .NET同步原语Barrier简介
Barrier(屏障)是一种自定义的同步原语(synchronization primitive),它解决了多个线程(参与者)在多个阶段之间的并发和协调问题. 1)多个参与者执行相同的几个阶段的操作 ...
- .NET 6 预览版 5 发布
很高兴.NET 6 预览版5终于跟大家见面了.我们现在正处于.NET 6 的后半部分,开始整合一些重要的功能. 例如.NET SDK 工作负载,它是我们.NET 统一愿景的基础,可以支持更多类型的应用 ...
- WarError syncing load balancer: failed to ensure load balancer: network.SubnetsClient#Get: Failure responding to request: StatusCode=403
Warning SyncLoadBalancerFailed 4m55s (x8 over 15m) service-controller Error syncing load balancer: f ...
- @Value(value="${***.***}")配置文件赋值给static静态变量
public static String topicName; @Value("${activemq.topicName}") public void setTopicName(S ...
- 算法竞赛中的常用JAVA API:PriorityQueue(优先队列)(转载)
算法竞赛中的常用JAVA API:PriorityQueue(优先队列) PriorityQueue 翻译过来就是优先队列,本质是一个堆, 默认情况下堆顶每次都保留最小值,每插入一个元素,仍动态维护堆 ...
- Install Fabric 1.8.3 Manually on Ubuntu 12.04
When you install Fabric with apt-get install fabric, you get a fabric with version 1.3.x, which is t ...
- 在Ant脚本中使用时间戳
时间戳在项目自动构建中广泛使用,例如在jar文件的manifest文件中,以及最后zip包的文件名里等,时间戳对应的Ant命令是,这个标签既可以用在一个内部,也可以放在外部用作"全局&quo ...
- Python - pydantic 入门介绍与 Models 的简单使用
前言 为啥要学这个,因为 FastAPI 是基于它进行开发的,而且是个不错的框架,所以有必要深入学习 前置学习 Python 类型提示:https://www.cnblogs.com/poloyy/p ...
- Sqli-Labs less38-45
less-38 前置基础知识:堆叠注入 参考链接:https://www.cnblogs.com/lcamry/p/5762905.html 实际上就是多条sql语句一起使用. 在38关源码中加入输出 ...
- NOIP 模拟 $28\; \rm 遗忘之祭仪$
题解 \(by\;zj\varphi\) 直接贪心模拟即可,对于每个点,如果它未被覆盖,直接在这覆盖一次. 每个黑点只会被扫一次,所以总复杂度为 \(\mathcal O\rm (nm)\) Code ...