linux shell echo -n read op,shell基础五:输入和输出(echo,read,cat,管道,tee,重定向等) Shell编程 卓越资源 - 专业Linux/Unix资料站...

read的用法,这是在"man bash"中的一段

read [-ers] [-u fd] [-t timeout] [-a aname] [-p prompt] [-n nchars] [-d delim] [name ...]

One  line  is  read  from  the  standard

input, or from the file descriptor fd supplied as an argument to the -u

option, and  the first word is assigned to the first name, the second

word to the second name, and so on, with leftover words and

their  intervening  separators  assigned  to the last name.  If there

are fewer words read from the input stream than names, the remaining

names are  assigned  empty  values.  The characters in IFS are used to

split the line into words.  The backslash character (\)  may  be

used  to  remove any special meaning for the next character read and for

line continuation.  Options, if supplied, have the  following meanings:

-a aname

The words are assigned to sequential

indices of the array variable aname, starting at 0.  aname is unset

before any new  values  are  assigned.   Other  name  arguments  are

ignored.

-d delim

The first character of delim is  used  to  terminate  the input line, rather than newline.

-e     If the standard input is coming

from a terminal, readline (see READLINE above) is used to obtain the

line.

-n nchars

read returns after reading nchars characters rather  than waiting for a complete line of input.

-p prompt

Display prompt on standard error,

without a trailing newline, before attempting to read any input.  The

prompt is displayed only if input is coming from a terminal.

-r     Backslash does not act as an

escape character.  The backslash is considered to be part of the

line.  In  particular,  a  backslash-newline pair may not be used as a

line continuation.

-s     Silent mode.  If input is coming from a terminal, characters are not echoed.

-t timeout

Cause  read  to time out and return

failure if a complete line of input is not read within

timeout  seconds.  This option  has  no  effect if read is not reading

input from the terminal or a pipe.

-u fd  Read input from file descriptor fd.

If no names are supplied, the line read

is assigned to the ariable  REPLY.   The  return  code  is zero, unless

end-of-file is ncountered, read times out, or an

invalid  file  descriptor  is supplied as the argument to -u.

经测试发现许多shell资料中没有介绍过的新内容,或许地球人都知道了^_^,不管怎样希望有兴趣的一起琢磨一下。

以下是我用来测试的代码,结果已经略去,请大家自行测试。

read -p "how old r u? " age

echo $age

read -p "some words? " -a words

echo ${words[*]}

read -p "Password: " -s passwd

echo $passwd

read -t 5 auth

echo $auth

read -n 1 key

read -dq -p "input something end with q: " menu

read -e file #在这试试命令历史和补齐功能

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值