#!/bin/bash
#User inputs his first name and last name. Program shows his full name.
# History:
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
read -p "Please input your first name: " firstname # 提示使用者输入
read -p "Please input your last name: " lastname # 提示使用者输入
echo -e "\nYour full name is: $firstname $lastname" # 结果由屏幕输出
执行脚本:
[root@SOR_SYS test]# sh read-p.sh
Please input your first name: zhu
Please input your last name: ying
Your full name is: zhu ying
[root@SOR_SYS test]#
下面我们来看看read的用法:
[root@SOR_SYS ~]# read [-pt] variable
选项与参数:
-p :后面可以接提示字符!
-t :后面可以接等待的『秒数!』这个比较有趣~不会一直等待使用者啦!
范例一:让用户由键盘输入一内容,将该内容变成名为 atest 的变量
[root@SOR_SYS ~]#read atest
This is a test <==此时光标会等待你输入!请输入左侧文字看看
[root@www ~]# echo $atest
This is a test <==你刚刚输入的数据已经变成一个变量内容!
范例二:提示使用者 30 秒内输入自己的大名,将该输入字符串作为名为 named 的变量内容
[root@www ~]# read -p "Please keyin your name: " -t 30 named
Please keyin your name: zhuying <==注意看,会有提示字符喔!
[root@www ~]# echo $named
zhuying <==输入的数据又变成一个变量的内容了!
read 之后不加任何参数,直接加上变量名称,那么底下就会主动出现一个空白行等待你的输入(如范例一)。 如果加上 -t 后面接秒数,例如上面的范例二,那么 30 秒之内没有任何动作时, 该命令就会自动略过了~如果是加上 -p ,嘿嘿!在输入的光标前就会有比较多可以用的提示字符给我们参考!
==========》》》》》》》》》》》
例子:以下只是我在其他脚本中截取的一部分,为了方便大家更好的理解read的用法~
cpsDeploy_menu(){
echo " --- CPS APP Menu--- "
echo " help app command: getdeploy app_name "
#echo "deploy $size $app_name "
echo " Check app status: status app_name:app_name "
echo " Deploy Command : deploy IP app_name source_path/"
#echo
while true ; do
read -p "App> " appcomm deploylist(以前一直不晓得还能出现多个变量)
case "$appcomm" in
"quit")
break
;;
"getdeploy")
echo " Search $deploylist :"
num=`grep "^$deploylist" cpsapplist.prop | wc -l`
if [ $num \> 0 ]
then
getdeployapp $deploylist
else
echo " Please sure the app name is correct! "
fi
;;
"deploy")
echo " cps app deployment now...."
echo "deploy directory: $deploylist"
deploywarapp $deploylist
#getdeploylist $deploylist
;;
"status")
getappstatus $deploylist
;;
esac
done
}
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
ps:当子程序完成后,在子程序内的各项变量或动作将会结束而不会传回到父程序中』
[root@www scripts]# echo $firstname $lastname
[root@SOR_SYS test]# sh read-p.sh
<==确认了,这两个变量并不存在喔!
Please input your first name: zhu
Please input your last name: ying <==看吧!在 script 运行中,这两个变量有生效
[root@www scripts]# echo $firstname $lastname
<==事实上,这两个变量在父程序的 bash 中还是不存在的!
如果将程序相关性绘制成图的话,我们以下图来说明。当你使用直接运行的方法来处理时,系统会给予一支新的 bash 让我们来运行 read-p.sh里面的命令,。 当 read-p.sh运行完毕后,子程序 bash 内的所有数据便被移除,因此上表的练习中,在父程序底下 echo $firstname
时, 就看不到任何东西了!这样可以理解吗?
sh read-p.sh
分享到:
相关推荐
### WinHex脚本命令教程知识点概述 本文将详细介绍WinHex脚本命令的使用方法,包括基本概念、常用命令及其应用场景。WinHex是一款高级的十六进制编辑器与磁盘分析工具,广泛应用于数据恢复、取证分析等领域。通过...
### WinHex脚本命令教程详解 WinHex是一款高级的十六进制编辑器及磁盘分析工具,通过使用脚本,用户能够实现自动化处理各种复杂的任务,例如数据恢复、磁盘编辑、二进制数据编辑等。本文将详细介绍WinHex脚本的使用...
这个修改版的 read_bf_file 函数主要进行了以下改进: 1.增加了时间戳的读取和存储功能,每次读取一个记录前先读取 8 字节的时间戳,使函数能够处理和返回每个CSI记录的时间信息。 2.调整了内存预分配和文件读取...
### Shell脚本练习知识点解析 #### 一、测试用户名与密码是否正确 **知识点:** - 使用`su`命令切换用户。 - Bash 脚本中的条件判断。 - 使用重定向来传递密码。 **实现原理:** 在 Linux 系统中,`su` 命令用于...
### bash笔记-06-交互式脚本 #### 一、引言 在Linux操作系统中,bash(Bourne Again SHell)是最常用的shell之一,它不仅提供了强大的命令执行环境,还支持创建复杂的脚本程序。本文档主要探讨bash中的交互式脚本...
33.1. 交互式和非交互式的shells 和脚本 33.2. Shell 包装 33.3. 测试和比较: 另一种方法 33.4. 递归 33.5. 彩色脚本 33.6. 优化 33.7. 各种小技巧 33.8. 安全话题 33.8.1. 被感染的脚本 33.8.2. 隐藏Shell 脚本源码...
本文介绍的“非常简单的Shell菜单脚本”就是一种基础的Shell脚本应用,它创建了一个简单的菜单系统,使用户能够通过选择编号来执行不同的功能,实现了人机交互的“傻瓜式”操作。 首先,脚本通过`#!/bin/sh`行指定...
2. **新功能**:针对CS6版本的新特性,如改进的性能、新的API接口,以及对旧版脚本的兼容性。 3. **案例分析**:提供丰富的实例,展示了脚本在实际工作中的应用,如批量处理、模板创建、插件集成等。 4. **脚本库*...
在使用这些脚本时,需要注意的是,批处理脚本可能会对系统产生影响,因此在实际应用前,应该先在安全的环境中测试脚本,确保其行为符合预期。另外,由于脚本文件是以文本格式存储的,所以存在被篡改的风险,对于涉及...
### Shell脚本学习指南知识点...通过以上知识点的学习,相信您已经对Shell脚本有了较为全面的认识。建议多动手实践,结合具体项目需求来加深理解。同时,不断探索新的技术和工具,可以有效提升脚本开发的能力和效率。
### VBS脚本编程教程知识点总结 #### 一、VBS脚本简介及应用场景 - **定义**:VBS(Visual Basic Script Edition)是微软推出的一种轻量级脚本语言,基于Visual Basic语言的一个子集。它直接由Windows系统解释执行...
shell脚本编程基础知识点 shell脚本是Linux操作系统中的一种编程语言,用于自动执行一系列命令。shell脚本文件是一个纯文本文件,可以使用任何文本编辑器编写,通常以.sh作为后缀名。 一、shell脚本的基本结构 ...
标题中的“mjpg-streamer-mini2440-read-only.tar.gz”表明这是一个使用tar和gzip命令打包的压缩文件,通常在Linux环境下使用。文件名暗示它可能是针对mini2440开发板的一个只读版本的mjpg-streamer项目。mjpg-...
Shell脚本是Linux系统中的一种强大工具,它允许用户通过编写命令序列来自动化日常任务,提高工作效率。在“shell脚本100例-详细高清版”中,我们可以期待学习到一系列实用的脚本示例,涵盖从基础到高级的各种功能。...
Linux Shell 脚本编程基础知识点总结 Linux 脚本编写基础 1.1 语法基本介绍 * `#!` 符号用来告诉系统它后面的参数是用来执行该文件的程序 * 在 Linux 中,使用 `/bin/sh` 来执行程序 * 编辑好脚本后,需要使其可...
总结来说,TCL脚本语言以其简单易学的语法和丰富的功能,成为控制台测试中不可或缺的工具。通过熟练掌握TCL的语法和特性,开发者可以编写出高效、灵活的测试脚本,提高测试效率,确保软件系统的稳定性。通过阅读...
8. **测试和调试**:编写完成后,对脚本进行单元测试和集成测试以确保其正确性。使用`unittest`或`pytest`等测试框架可以简化这一过程。 9. **版本控制**:为了跟踪代码的改动和协作开发,了解并使用版本控制系统如...