在 nohup 模式下调用时是否可以从脚本获取读取命令的值

在 nohup 模式下调用时是否可以从脚本获取读取命令的值

前任。我有一个脚本 Test.sh

#!/bin/sh
echo "/n read the value"
read info

if [ "$info" = 1 ];
then
echo "yes"
else
echo "no"
fi

我想以 nohup 模式从另一个脚本(test2.sh)调用 Test.sh 脚本。有什么方法可以通过传递参数/任何其他方式来提供“读取信息”的值。

测试2.sh

#!/bin/sh
Test.sh

答案1

是的,由将其传递到标准输入。一种方法是使用管道(演示如何反转两条线):

$ cat > test.sh <<'EOF'
> #!/bin/sh
> read -r first
> read -r second
> printf '%s\n' "$second" "$first"
> EOF
$ chmod u+x test.sh 
$ printf '%s\n' foo bar | nohup ./test.sh
nohup: appending output to 'nohup.out'
$ cat nohup.out 
bar
foo

相关内容