在Bash中,唯一获取(用户)输入的方法似乎是使用read方法,它会暂停脚本的其余部分。是否有任何方法可以接收命令行输入(以回车键结束)而不会暂停脚本。从我所看到的情况来看,可能可以使用$1的方式来实现?
read -t0
可以用于探测输入,如果你的进程被构建为一个循环结构。
#!/bin/bash
a='\|/-'
spin()
{
sleep 0.3
a="${a:1}${a:0:1}"
echo -n $'\e'7$'\r'"${a:1:1}"$'\e'8
}
echo 'try these /|\- , dbpq , |)>)|(<( , =>-<'
echo -n " enter a pattern to spin:"
while true
do
spin
if read -t0
then
read a
echo -n " using $a enter a new pattern:"
fi
done
$1, $2, ...
是脚本参数。 - Fernando&
在后台启动一个命令,但正如@Etan所说,你打算用它做什么? - Super-intelligent Shade