读取-p在与2> / dev / null结合时不会提示字符串,为什么会这样?

时间:2017-09-29 02:38:19

标签: linux shell

我写了一个脚本N如下:

import * as $ from 'jquery';

但是当我像这样运行这个脚本时

npm install

它不会在read命令中提示字符串。我知道2> / dev / null会重定向stderr,但是为什么read命令中的字符串也没有显示?

2 个答案:

答案 0 :(得分:1)

显然read -p将提示写入stderr。

例如:

$ read -p 'Prompt: ' x >read.out 2>read.err
42
$ echo $x
42
$ cat read.out
$ cat read.err ; echo ''
Prompt:
$

答案 1 :(得分:0)

" X"是可变的,你必须使用" $ x"或" $ {x}"

 read -p "Enter a number" x
    if [ $x -eq 1 ];then
         echo $x
    else
         echo "not equal 1" >&2
    fi

类似这样的事情