xuke123 发表于 2018-8-20 12:31:40

shell-6.shell read 命令

  shell-6.shell read 命令
  read -- 可以从键盘或文件中读入信息,并将其赋值给一个变量
  1. read 变量名
  【实例】
  # cat name.sh
  #!/bin/sh
  echo -n "Please input your name :"
  read name
  echo "Name is ${name}"
  显示结果:
  # sh name.sh
  Please input your name :yuanji
  Name is yuanji
  一次可以读取多个变量
  read变量名1变量名2。。。
  # cat info.sh
  #!/bin/sh
  read -p "Please input your name,age :"name age
  echo "Name is ${name}. Age is $age"
  显示结果:
  # sh info.sh
  Please input your name,age :yuanji 30
  Name is yuanji. Age is 30
  2. -p 参数
  上面使用 echon -n "..." 给出提示符,
  可以用
  read -p "显示的内容" 命令名
  【实例】
  # cat name.sh
  #!/bin/sh
  read -p "Please input your name :" name
  echo "Name is ${name}"
  显示结果:
  # sh name.sh
  Please input your name :Tom
  Name is Tom
  3.-t 参数 后面可接等待的秒数
  表示等待输入的时间,单位为秒,
  等待时间超过,将继续执行后面的脚本,
  【实例】
  # cat name.sh
  #!/bin/sh
  read -p "Please input your name :" -t 5 name
  echo "Name is ${name}"
  4.-s 参数 有时会需要脚本用户输入,但不希望输入的数据显示出来。如用户密码。
  # cat passwd.sh
  #!/bin/sh
  echo -n "Please Input your password :"
  read -spasswd
  echo -e "\n\n$passwd"
  显示结果:
  # sh passwd.sh
  Please Input your password :
  abc
  5.-n 参数
  规定read后面的变量所接收的字符个数
  【实例】
  # cat name.sh
  #!/bin/sh
  read -n 6 -p "Please input your name :" name
  echo ""
  echo "Name is ${name}."
  6.-a 参数
  分配到数组变量中      【关于数组后续说明】
  【实例】
  # cat aa.sh
  #!/bin/sh
  echo -n "Input muliple values into an array:"
  read -a array
  echo "get ${#array[@]} values in array"
  echo"==========="
  echo ${array
[*]}
  显示结果:
  # sh aa.sh
  Input muliple values into an array:abc hello yuanji
  get 3 values in array
  ===========
  abc hello yuanji
  以下几个部分在后续内容介绍
  read读文件
  关于数组后续说明
  以上是个人点点总结和理解,水平不高,文笔水平很烂,请各位大大见谅。
  可以一起交流学习。
  我的QQ:610851588
  可以加入我建的群(现在群人很少,希望慢慢多起来)
  Linux群:183932302
  Python ,shell 交流群:469094734

页: [1]
查看完整版本: shell-6.shell read 命令