shell script学习笔记二


##### Shell script 的预定变量( $0,$1,$2...) #####
例如:[test@linux test]$ /home/ch07.sh hello world
$0 = /home/ch07.sh
$1 = hello
$2 = world
...
依此类推



##### 流程控制 #####

## if ... then
定义:
if [ 条件判断式1 ]; then
   ....
elif [ 条件判断式1 ]; then
   ....
else
   ....
fi

例如:用户输入one,two,three时,分别显示出他的选择,如果输入的不是one,two,three,则显示用法。

if ["$1" == "one" ]; then
   echo "Your choice is ONE"
elif [ "$1" == "two" ]; then
   echo "Your choice is TWO"
elif [ "$1" == "three" ]; then
   echo "Your choice is THREE"
else
   echo "Usage: $0 one|two|three"
fi


如果有多个条件要判断时,用 [ 条件1 ] &&(||) [ 条件2 ]


## case ... esac
定义:
case $变量名称 in
   "变量内容1")
       ....
       ;;
   "变量内容2")
       ....
       ;;          
   *)
       ....
       ;;
esac

还是用上面的例子来演示一下:

case $1 in
   "one")
       echo "Your choice is ONE"
       ;;
   "two")
       echo "Your choice is TWO"
       ;;          
   "three")
       echo "Your choice is THREE"
       ;;          
   *)
       echo "Usage: $0 one|two|three"
       ;;
esac



##### function #####
定义:
function fname(){
   do something
}

利用function可以把重复的代码剥离出来,从而简化代码。function必须定义在脚本的最前面,这样脚本在执行时才能找到它。
function 也有预定变量$0,$1,$2...,使用和脚本的预定变量一样。不过所指的内容不一样,就是function里的$1 和脚本里的$1
指的不是同一个值。

例如上面的例子也可以这样写:

function printMsg(){
    echo "Your choice is $1"
}

case $1 in
   "one")
       printMsg 1
       ;;
   "two")
       printMsg 2
       ;;          
   "three")
       printMsg 3
       ;;          
   *)
       echo "Usage: $0 one|two|three"
       ;;
esac

#
[test@linux test]$ /home/ch08.sh one
Your choice is 1
一起来写Shell Script 01 接触linux时间有段时间,虽然之前对shell脚本如雷贯耳,一直相学,但是一直没找到一些比较基础的教程,常常看的晕晕乎乎的,直到我看到了鸟哥的私房菜:http://cn.linux.vbird.org/linux_basic/0220filemanager_4.php#file shell Script篇,觉得豁然开朗,下面就和我一起来学习shell Script 吧 要学习shell脚本,就... 阅读详情

相关推荐

Shell Script Menu-提升命令行交互体验的开源工具

Shell Script Menu 是一个开源项目,旨在通过脚本提供直观易用的命令行界面,特别是在系统管理、自动化任务和日常开发工作中。本章节将向读者简要介绍该项目的背景、目标、功能和潜在的使用场景。除了视觉层面的定制外,用户还可能需要根据自己的使用习惯或特定的工作流程来调整菜单项的功能。在Shell脚本中实现这一功能,可以通过编写可配置的参数和选项来完成:/bin/bash# 读取配置文件来初始化菜单选项# 创建带有用户自定义功能的菜单options=$(

weixin_42181686的博客 1301

Linux系统学习 shell script

Linux系统学习 shell script

傻傻的心动的博客 1402

40-Type-C电路设计

Type-C电路设计

weixin_66510961的博客 9650

【运行Shell Script程序】

if…else三元表达式 分支结构 1.输入一个分数,判断该分数是ABCD中哪一级(A:[90,100],B:[70,90),C:[60,70),D:[0,60)) 2.输入x值,输出y的值:y={█(2x(x>5)@10-x(x<5)@x-2(x=5))┤ 3. 输入一个4位(含4位)以内的正整数,判断这个数字是几位数,并输出该数字的每位数字之和 4.输入2个数字和加减乘除中的一个符号,输出对应的结果 5.输入一个2位正整数,这个数字如果是奇数,输出各位数字之和,如果是偶数,输出各位数字之差

yxq422976的博客 2015

单细胞轨迹分析实战:基于Monocle和CytoTRACE的细胞分化潜能与状态解析

本文提供了基于Monocle和CytoTRACE的单细胞轨迹分析实战指南。通过乳腺癌数据集,详细演示了从数据准备、伪时序分析、细胞分化潜能评估到分支点功能挖掘的全流程。结合两种工具的优势,能有效解析细胞状态动态演变,为发育和疾病研究提供关键见解。

weixin_29070861的博客 478

Zephyr RTOS 嵌入式 C 编程 (使用嵌入式 RTOS POSIX API)8. Zephyr RTOS 与以太网、Wi-Fi 及 TCP/IP

支持的 BSD 函数包括:socket()、close()、recv()、recvfrom()、send()、sendto()、connect()、bind()、listen()、accept()、fcntl()(用于设置非阻塞模式)、getsockopt()、setsockopt()、poll()、select()、getaddrinfo()和 getnameinfo()。向开发板烧录代码也可能存在问题。可以通过调用 net_if_up() 开启网络接口 ,调用 net_if_down() 关闭接口。

1342

【shell script】

脚本的运行方式,判断式,if语句,case语句,while循环、until循环和for循环

weixin_42504934的博客 2034

VMware VSAN 高级参数介绍(测试用)

VSAN 的策略驱动让我们看到了VSAN无穷的潜力,其设计思路相当新颖,在一个基础资源池上使用策略就能实现不同对象的区分服务,而目前没有其他厂家能到VMware这样的高度。 VSAN 呈现给用户配置很简单,但实际上设计及后台比较复杂。笔者无意间发现了VSAN的隐藏高级参数设置,有很多好玩的选项想分享出来。这些参数全部是针对每主机进行设置的。VSAN 中有很多默认设置,这些设置应该都是研发人员多次测试得出的最优值,修改可能导致环境异常,并不建议修改! 目录 参数1:全闪配置下 SSD 写缓存最大.

山水牧羊 2030

Linux学习笔记(七):Shell与Shell Script

Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁。Shell 既是一种命令语言,又是一种程序设计语言。Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。Ken Thompson 的 sh 是第一种 Unix Shell,Windows Explorer 是一个典型的图形界面 Shell。Shell 脚本(shell script),是一种为 shell 编写的脚本程序。

Machine Learning with Tutors 8371

关于Win11安装Ubuntu子系统报错:WslRegisterDistribution failed with error 解决办法

Win11安装Ubuntu子系统报错:WslRegisterDistribution failed with error

qq_51908382的博客 3万+

骚戴笔记公告

骚戴笔记公告

我从不打没有准备的仗! 2万+

通过Excel自动生成Shell Script

放入指定格式字符自动生成脚本 函数1 指定数据 xxxxxxxxxx 00000123456 1900/01/01 14:57:27 -123456 ins-xxx-sky 函数 Gen “Celebrus fires content request to Pega - Se...

天空源的博客 1208

深度强化学习调参技巧:以DQN、DDPG、TD3、PPO、SAC等算法为例

深度强化学习调参技巧:以D3QN、DDPG、TD3、PPO、SAC算法为例

丨汀、的博客 3443

shell script简介

1 什么是shell script? shell script是通过shell 的功能所写的一个program,这个程序 是使用纯文本文件,将一些shell的语法与命令写在里面 ,搭配正则式,管道命令和数据流重定向等功能,以达到我们所想要的功能。 2.1 编写第一个script #!/bin/bash # this is first shell script # printf H...

mick_hu的博客 7479

我的python学习之路

Python 是一门功能强大且易于学习的编程语言,广泛应用于数据分析、人工智能、Web 开发、自动化等领域。以下是一个 Python 学习路径的总结,帮助你系统地掌握 Python 编程。

数据知道的博客 3万+

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Shell Script 学习笔记

Shell Script 学习笔记 1、什么是Shell Script shell是命令行界面下让我们与操作系统沟通的一个工具接口,script是就是‘"脚本"的意思。 shell script是利用shell的功能所写的一个"程序",这个"程序"是使用纯文本文件,将一些shell的语法与命令(含外部命令)写在文件中,搭配正则表达式、管道命令与数据流重定向等功能,以达到我们想要的处理目的。

紫眸的博客 1201

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

项目八 学习shell script

可以使用“declare i total-SfirstnsSsecnu",也可以使用上面的方式来表示。**3,netstat命令:**查询到目前主机开启的网络服务端口(service posts)。以bash程序来运行,通过“bash shell.sh"或“sh shell.sh"来运行。当你使用直接运行的方法来处理时,系统会开辟一个新的bash来运行sh02.sh里边的内容。**1,功能:**能提供数组,循环,条件与逻辑判断等功能。3,支持排错(debug),可以更好的管理主机。

打好基础,突破瓶颈 1293

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

shell script 编写和执行

1. shell script shell script是针对shell写的脚本。 使用纯文本文件, 将一些shell的语法和命令写在里面,使用户能处理复杂的操作。 命令执行: 需要文件有rx权限。 当前目录下使用相对路径: ./hello.sh 或者使用绝对路径: /home/work/hello.sh 以bash命令执行:

yonggang7的专栏 4002

Shell Script字符串处理

Shell Script中字符串的字符串处理,如获取字符串长度、获取子串、移除子串以及替换操作。

Ghosind 533

shell script

Shell 脚本(shell script),是一种为 shell 编写的脚本程序。 First shell script #! /bin/bash echo "Hello shell" chmod + x first.sh ./first.sh #! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell 变量 定义变量 定义变量时,变量名不加美元符号($,PHP语言中变量需要) name="shell" 注意,变量名和等号之间不能有空格,这可能和你熟悉的所有编程语言

太阳上的雨天 1681

Flask script 内的Shell 类 使用

1.集成Python shell 每次自动shell会话都要导入数据库实例和模型,很烦人。为了避免一直重复导入,我们可以做些配置让Flask-Script的Shell命令自动导入特定的对象。若想把对象添加到导入列表中,我们要为shell命令注册一个make_context回调函数 例子:hello.py: 为shell命令添加一个上下文 from flask_script...

angjijing7393的博客 523

shell script入门

从程序员的角度来看, Shell本身是一种用C语言编写的程序,从用户的角度来看,Shell是用户与Linux操作系统沟通的桥梁。用户既可以输入命令执行,又可以利用 Shell脚本编程,完成更加复杂的操作。在Linux GUI日益完善的今天,在系统管理等领域,Shell编程仍然起着不可忽视的作用。深入地了解和熟练地掌握Shell编程,是每一个Linux用户的必修 功课之一。 Linux的Shell

gcong 8062

Linux shell script编程

Linux shell script编程 什么是shell script shell script是利用shell的功能所写的一个程序,这个程序使用纯文本文件,将一些shell的语法与命令写在里面。 shell script可以简单被看成是批处理文件,也可以被说成是一个程序语言,且这个程序语言由于都是利用shell与相关工具命令,所有不需要编译即可执行。 执行顺序 命令的执行是从上而下,从左而右...

budding0828 632

Ansible自动化运维实战--script、unarchive和shell模块(6/8)

Ansible 的 script 模块允许你在远程主机上运行本地的脚本文件,其提供了一种便捷的方式来执行自定义脚本以实现特定的自动化任务。script模块能把本地脚本复制到远程主机并执行,以此实现复杂的自动化任务。Ansible 的 unarchive 模块用于在远程主机上解压缩归档文件,如 .tar、.tar.gz、.zip 等。把tigerhhzz.tar压缩包解压到主机组中的每台机子中。生活可能不像你想象的那么好,但是也不会像你想象的那么糟。首先在ansible主机中创建一个脚本文件。

tigerhhzz的博客 2121

学习shell script

一.什么是shell script Shell script是利用shell的功能所写的一个“程序”,这个程序是是使用纯文本文件,将一些shell的语法与命令(含外部命令)写在里面,搭配正则表达式,管道命令与数据流重定向等功能,以达到我们所想要的处理目的。 二.shell编写注意事项: 1.命令的执行是从上而下,从左而右地分析执行; 2.命令,参数间的多个空白都会被忽略掉; 3.空白行也

1、测试博主技术知识分享 2、pos行业知识技术分享 3、java后端技术知识分享 4、嵌入式技术知识分享 5、运维部署相关知识分享 3083
上一篇: shell script学习笔记一
下一篇: shell script学习笔记三
flyingjava
博客等级 码龄20年 9粉丝 2原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值