常用到的read命令

记录一下。


几个简单参数介绍

read -p 显示提示信息

read -s 静默模式(Silent mode),不会在屏幕上显示输入的字符。当输入密码和其它确认信息的时候,这是很有必要的。

read -t seconds -p 设置超时时间,单位为秒。如果用户没有在指定时间内输入完成,那么将退出输入。

应用示例(read.sh):

#!/bin/bash
#author:zhangyl

#输入用户名:rootread -p "请输入用户名: " name
echo "The username is $name."

#输入密码:root@123!
echo -n "请输入密码: "  #echo -n 表示不换行输出read -s passwd
echo ""
echo "The passwd input is $passwd."

#输入用户名:rootread -t 5 -p "请输入用户名: " name
echo "The username is $name."

  执行结果:

[root@ZWZF-CWY-LZY-12 upload]# vim read.sh
[root@ZWZF-CWY-LZY-12 upload]# sh read.sh
请输入用户名: root
The username is root.
请输入密码:
The passwd input is root@123!.
请输入用户名: The username is .      #5秒内没有操作
[root@ZWZF-CWY-LZY-12 upload]#
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
非常感谢您的问题!根据您的要求,我编写了一个简单的shell程序,包括循环结构、选择结构和各种类型的变量,以及一些用户与组管理、目录、文件、文件权限、进程、软件包等操作的命令。 ```bash #!/bin/bash # 学号 student_id="123456" # 姓名 name="张三" echo "欢迎使用 $name 的shell程序,您的学号是 $student_id" while true do # 选择结构 echo "请输入您要执行的操作(1-用户与组管理,2-目录与文件操作,3-文件权限管理,4-进程管理,5-软件包管理,6-退出)" read choice case $choice in 1) # 用户与组管理 echo "请输入您要执行的操作(1-添加用户,2-删除用户,3-添加组,4-删除组)" read user_choice case $user_choice in 1) # 添加用户 echo "请输入用户名:" read username echo "请输入用户ID:" read uid echo "请输入用户所属组ID:" read gid echo "请输入用户家目录:" read home_dir echo "请输入用户登录Shell:" read login_shell useradd -u $uid -g $gid -d $home_dir -s $login_shell $username ;; 2) # 删除用户 echo "请输入用户名:" read username userdel $username ;; 3) # 添加组 echo "请输入组名:" read groupname echo "请输入组ID:" read gid groupadd -g $gid $groupname ;; 4) # 删除组 echo "请输入组名:" read groupname groupdel $groupname ;; *) echo "无效的选择" ;; esac ;; 2) # 目录与文件操作 echo "请输入您要执行的操作(1-创建目录,2-删除目录,3-创建文件,4-删除文件)" read file_choice case $file_choice in 1) # 创建目录 echo "请输入目录名:" read dir_name mkdir $dir_name ;; 2) # 删除目录 echo "请输入目录名:" read dir_name rmdir $dir_name ;; 3) # 创建文件 echo "请输入文件名:" read file_name touch $file_name ;; 4) # 删除文件 echo "请输入文件名:" read file_name rm $file_name ;; *) echo "无效的选择" ;; esac ;; 3) # 文件权限管理 echo "请输入您要执行的操作(1-更改文件所有者,2-更改文件所属组,3-更改文件权限)" read permission_choice case $permission_choice in 1) # 更改文件所有者 echo "请输入文件名:" read file_name echo "请输入新的所有者用户名:" read owner_name chown $owner_name $file_name ;; 2) # 更改文件所属组 echo "请输入文件名:" read file_name echo "请输入新的所属组名称:" read group_name chgrp $group_name $file_name ;; 3) # 更改文件权限 echo "请输入文件名:" read file_name echo "请输入新的权限:" read permission chmod $permission $file_name ;; *) echo "无效的选择" ;; esac ;; 4) # 进程管理 echo "请输入您要执行的操作(1-查看进程,2-杀死进程)" read process_choice case $process_choice in 1) # 查看进程 ps -ef ;; 2) # 杀死进程 echo "请输入进程ID:" read pid kill -9 $pid ;; *) echo "无效的选择" ;; esac ;; 5) # 软件包管理 echo "请输入您要执行的操作(1-安装软件包,2-卸载软件包)" read package_choice case $package_choice in 1) # 安装软件包 echo "请输入软件包名称:" read package_name yum install $package_name ;; 2) # 卸载软件包 echo "请输入软件包名称:" read package_name yum remove $package_name ;; *) echo "无效的选择" ;; esac ;; 6) # 退出 exit 0 ;; *) echo "无效的选择" ;; esac done ``` 这个程序虽然简单,但包含了很多常见的操作和结构,可以作为一个参考。当然,如果您有其他的需求,也可以根据这个程序进行修改或编写自己的程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值