首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

shell 脚本中关于用户输入参数的处理

shell 脚本中关于用户输入参数的处理 bash shell 脚本提供了3种从 用户处 获取数据的方法: 命令行参数(添加在命令后的数据) 命令行选项 直接从键盘读取输入 1 命令行参数 像 shell.../add.sh 10 20 本例向脚本 add.sh 传递了两个 命令行参数(10 和 20). 1.1 读取命令行参数 bash shell 中有一些特殊变量, 被称为 位置参数(positional...这里从略, 等有需要用到再回来补上. 3 获取用户输入 尽管 命令行选项 和 参数 是从 用户处 获取输入的一种重要方式, 但有时脚本的交互性还需更强一些....接受输入, 在收到输入后, read 会将数据存入变量中....当 read 读取多个变量时, 多个变量用空格分隔: $ cat temp.sh #!

2.3K20

《Linux命令行与shell脚本编程大全》第十四章 处理用户输入

有时还会需要脚本能够与使用者交互。bash shell提供了一些不同的方法来从用户处获得数据, 包括命令行参数,命令行选项,以及直接从键盘读取输入的能力。...自己写的脚本中可以支持这些选项。这样用户使用你的脚本就不用查手册了。...比如: -a 显示所有对象 -c 生成一个计数 -h 显示命令的帮助信息 -I 忽略文本大小写 -v 生成详细输出 …… 14.6 获得用户输入 使用场景:脚本运行时可以问个问题,并等待运行脚本的人来回答...14.6.2 超时 如果使用了read,脚本会一直等待用户输入。 如果不管脚本是否有数据输入都继续执行下去,就可以指定一个定时器。 -t 指定一个计时器,指定了read命令等待输入的秒数。...还可以不对输入过程计时,而是统计字数,字数到了就自动退出,将输入数据赋给变量

1.7K50
您找到你想要的搜索结果了吗?
是的
没有找到

Shell-通过shell启动Java类中的main方法 + 通过Shell启动jar包

/startup 【start | stop | info | status 】详见脚本 #!/bin/sh #该脚本为Linux下启动java程序的通用脚本。...首先调用checkpid函数,刷新$psid全局变量 #2. 如果程序已经启动($psid不等于0),则开始执行停止,否则,提示程序运行 #3..../bin/sh # #该脚本为Linux下启动java程序的通用脚本。即可以作为开机自启动service脚本被调用, #也可以作为启动java程序的独立脚本来使用。...首先调用checkpid函数,刷新$psid全局变量 #2. 如果程序已经启动($psid不等于0),则开始执行停止,否则,提示程序运行 #3....fi } #重启 restart(){ stop sleep 5 start } #根据输入参数,选择执行对应方法,不输入则执行使用说明 case "$1" in "start")

1K60

shell_环境变量_常量_位置变量_运算(3)

pstree -p f1.sh bash中的算术运算 bash随机数生成器 随机打印字体颜色 短路与&& 短路或|| a b 通过异或交换值 习题 编写脚本,统计/etc/passwd第10个用户和第20...个用户的id的和 比较 如果磁盘空间大于80% 给出提示信息 保存永久环境变量 1.root用户:   在/etc/profile文件中添加变量【对所有用户生效(永久的)】   并执行以下代码   ...显示输入的所有的变量 1. $* 传递给脚本的所有参数,全部参数合为一个字符串 2. $@ 传递给脚本的所有参数,每个参数为独立的字符串;脚本嵌套脚本使用 区别 : ex:...127 执行脚本时最后一条指令执行成功就不会显示0 或 中间有语法错误 >#f2.sh >#echo $?...0 最后一条指令执行成功,中间可能有执行的指令,但中间没有语法错误 f3.sh >ls >exit 10 :指定运行脚本结束时的状态 例:退出时的数据是10 >#f3.sh >#echo

63130

Shell 编程日记

Shell 脚本语法 Shell 解释器 名称 路径 简介 Bourne Shell /usr/bin/sh或/bin/sh Bourne shell是AT&T开发的原始UNIX shell以其开发人员...,必须以此句开头,表示 shell 脚本解释器; Shell 脚本注释用 # 开头,但第一句除外/usr/bin/bash; Shell 脚本通常以 .sh 为后缀命名,约定成俗; Shell 脚本调试可以使用...DATE 变量DATE=$(date +%T) 007 ${} 变量引用,推荐 声明变量 T 并打印输出到屏幕T=$(ls -l)echo ${T} 008 | 管道符,把前一个命令执行的结果作为后一个命令的输入...,如果使用变量,请使用双引号 sed -i "Line i str" file // 在 Line行前插入 str(新行),i 前可以加数字(3i)表示第几行前插入 sed -i 'Line a str...// read 可以接收用户输入的内容,把用户敲入的用户赋值给 username read -p "请输入用户名:" username // 设置等待输入超时 read -t 5 -p "请输入用户

18920

Linux复习资料——一篇文章学会sh脚本的编写

、【使用 source 命令执行】 创建变量 遍历多个值 数组 输出数组信息 获取数组长度 范围查询 传递参数 运算符 流程控制语句(后续请使用vim编辑器,否则容易出现【预期的文件结尾】的问题) 分支语句...,简单来说Shell就是一个用户跟操作系统之间的一个命令解释器。...shell 编程注意事项 Shell脚本名称命名一般为英文、大写、小写,后缀以.sh 结尾 shell 脚本 变量不能以数字、特殊符号开头,不能使用特殊符号,可以用【_】下划线,不能使用关键字。...你的第一个脚本程序: 如果对输入过程不太了解,就直接复制粘贴。 cd /root/ echo "echo HelloWorld">test.sh chmod 777 test.sh ....cd /root/ vi test.sh 输入以下编码:  #!

1.2K10

二、SHELL位置变量

if [ $# -ne 2 ] #如果传入参数不是2个 then echo "/bin/sh $0 arg1 arg2" #提示用户脚本路径和用法 exit 1 #退出并返回1...fi echo $1 $2 #满足2个参数则执行命令 sh test.sh /bin/sh test.sh arg1 arg2.不加参数,提示用户用法 sh test.sh ni wo ni...word}} 如果变量赋值或为空,则用word值作为错误输出 冒号非必须,省略冒号,则只针对赋值的变量,加上冒号,就包括为空的变量 2.演示案例 cat /server/scripts/t2.sh...the error} sh /server/scripts/t2.sh echo ${var:-ttt}--> ttt echo $var--> #变量赋值,则用ttt代替输出,查看变量仍然赋值...the error}--> /server/scripts/t2.sh: line 9: var: the error #变量赋值则输出定义的报警信息 3.企业工作用途 在企业中,针对目录路径等的处理就可以上述变量不存在则赋值的方式

1.4K20

shell(一)

`和文件名之间有空格 使用此命令执行时需要注意:shell脚本内容环境和当前用户环境一致。 2.2.1区别 三种方式执行脚本,除了上面的适用场景不同,还有什么区别呢?...(此方法只对当前用户有效) 修改 /etc/profile后,需要重启操作系统,全局变量才生效。...(此方法对所有的用户有效) 修改完后,你会发现一个问题,就是当前终端为什么不能看到全局变量,因为你需要加载一下,让当前环境中有你定义的全局变量。...,那么返回变量值,否则返回默认值,下面举个例子: 格式: ${变量名:-默认值} 我们在一个脚本输入下面的内容: #!...hello.sh 2 您选择的套餐为: 套餐 2 没有输入参数,变量a获取不到值,那么默认为套餐1。

3.4K50

Shell脚本编程_shell简单脚本

/script.sh )在脚本当前目录,脚本需要执行权限 绝对路径执行( /PATH/to/script.sh )无需在脚本目录,脚本需要执行权限 bash 执行( bash /PATH/to/script.sh...:从该设备接收用户输入的数据 标准输出:通过该设备向用户输出数据 标准错误:通过该设备报告执行出错信息 类型 设备文件 文件描述编号 默认设备 标准输入 /dev/stdin 0 键盘 标准输出 /dev...自定义变量:由用户自己定义、修改、使用,只在用户自己的 shell 环境中有效,因此又称为本地变量 特殊变量:环境变量、只读变量、位置变量、预定义变量 ① 自定义变量 基本格式: 变量名=变量值 示例...返回最后一个后台进程的进程号 用户可以在脚本中使用以下命令自定义退出状态码: exit [n] #脚本中一旦遇到exit命令,脚本会立即终止;终止退出状态取决于exit命令后面的数字 #如果脚本指定退出状态码...tab \v 与\f相同 \\ 插入\字符 \nnn 插入nnn(八进制)所代表的ASCII字符 参考: echo -n/-e 用法 echo 命令详解 echo 显示内容带颜色 2.9 条件测试命令

7.8K10

linux的shell编程入门

,把用户输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出屏幕返回给用户。...普通变量一般是由开发者用户开发脚本程序时创建的。...[root@clsn ~]# echo $LANG zh_CN.UTF-8 1.4.3 普通变量 本地变量用户当前的Shell生存期的脚本中使用。...]# sh yhk.sh输入你的银行卡号:123456 请输入密码: 你的银行卡号: 123456 你的密码为: 123456 1.6.4 写一个交互脚本,实现能够定义主机名及IP地址 脚本内容...用途:用于捕捉由于变量未定义而导致的错误,并退出程序 ${parameter:+word} 如果parameter变量值为空或赋值,则什么都不做,否则word字符串将替代变量的值 特殊变量实践 脚本内容

8K30

Shell编程基础篇-上

,把用户输入解释给操作系统,并处理各种各样的操作系统的输出结果,输出屏幕返回给用户。...普通变量一般是由开发者用户开发脚本程序时创建的。...[root@clsn ~]# echo $LANG zh_CN.UTF-8 1.4.3 普通变量 本地变量用户当前的Shell生存期的脚本中使用。...]# sh yhk.sh输入你的银行卡号:123456 请输入密码: 你的银行卡号: 123456 你的密码为: 123456 1.6.4 写一个交互脚本,实现能够定义主机名及IP地址 脚本内容...用途:用于捕捉由于变量未定义而导致的错误,并退出程序 ${parameter:+word} 如果parameter变量值为空或赋值,则什么都不做,否则word字符串将替代变量的值 特殊变量实践 脚本内容

2K00

Shell脚本编程30分钟入门

示例解释 第1行:指定脚本解释器,这里是用/bin/sh做解释器的 第2行:切换到当前用户的home目录 第3行:创建一个目录shell_tut 第4行:切换到shell_tut目录 第5行:循环条件,...for, do, done是sh脚本语言的关键字。 shell和shell脚本的概念 shell是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。...(例如调用了不存在的函数),只要没执行到这一行,就不会报错 环境兼容性 如果你的脚本是提供给别的用户使用,使用sh或者bash,你的脚本将具有最好的环境兼容性,perl很早就是linux标配了,python...方法是: real_path=`readlink -f $1`#$1是用户输入的参数,如function.sh ....$real_path 用户输入 执行脚本时传入 脚本运行中输入 select菜单 stdin和stdout 常用的命令 sh脚本结合系统命令便有了强大的威力,在字符处理领域,有grep、awk、sed三剑客

1.4K20

shell学习教程(超详细完整)

二、shell的分类 Bash 常用快捷键 输入输出重定向 linux 的标准输入与输出 输入重定向 输出重定向 /dev/null 文件 多命令顺序执行 shell脚本的执行 三、shell变量 1..../bin/sh echo "shell脚本本身的名字: $0" echo "传给shell的第一个参数: $1" echo "传给shell的第二个参数: $2" 保存退出后,你在Test.sh所在的目录下输入.../bin/bash #批量添加指定数量的用户 read -p "Please input user name: " -t 30 name #让用户输入用户名,把输入保存入变量name read -p..."Please input the number of users: " -t 30 num #让用户输入添加用户的数量,把输入保存入变量num read -p "Please input the...password of users: " -t 30 pass #让用户输入初始密码,把输入保存如变量pass if [ !

5.6K20

linux使用udev配置U盘自动挂载

这样就能写出很多可能非常有用的实用程序,而它已经很好了,普通用户就可以写出脚本去做一些事情,比如当某个硬盘驱动器插入时,执行某个任务。...,然后输入下面的简单脚本: echo `date` >> /tmp/trigger.log 向临时目录写入当前时间,脚本名称保存为trigger.sh.并执行并运行 chmod +x 授予可运行权限 接下来就是通过...,使用重启 实战 配置u盘插入自动挂载 执行过程:使用udev配置规则,规则是当检测到u盘插入时执行一段脚本【自动挂载脚本】,当u盘拔出时也执行一段脚本【自动卸载u盘脚本】。.../bin/sh ​ #一般U盘插入之后会在/dev下产生一个sda和一个sda1节点, #但是只有sda1是可以挂载的。...udev脚本的ACTION作为环境变量来用, #但是无法使用KERNEL #-------------------------------------------------# if [ $# -ne

8.7K51

一脸懵逼学习Linux的Shell编程

(1)Shell是用户与内核进行交互操作的一种接口,目前最流行的Shell称为bash Shell (2)Shell也是一门编程语言,即shell脚本 (3)一个系统可以存在多个shell...,可以通过cat /etc/shells命令查看系统中安装的shell,不同的shell可能支持的命令语法是不相同的 2:Shell脚本的执行方式: (1)第一种:输入脚本的绝对路径或相对路径 首先要赋予.../helloWorld.sh 或者,不用赋予+x权限,而用解释器解释执行 sh  helloworld.sh (2)第二种:bash或sh +脚本     sh /root/helloWorld.sh...    sh helloWorld.sh (3)第三种:在脚本的路径前再加". "     ..../helloWorld.sh 注意: 区别:第一种和第二种会新开一个bash,不同bash中的变量无法共享 3:Shell中的变量: Linux Shell中的变量分为“系统变量”和“用户自定义变量

73060
领券