我做了简单的脚本。文件名是 sutest 。
#!/bin/bash
cd ~/Downloads/redis-4.0.1/src
./redis-server
echo "uid is ${UID}"
echo "user is ${USER}"
echo "username is ${USERNAME}"
我毁了剧本。$ . sutest
但是,脚本代码在./redis-server
处停止。
所以我看不到回音信息。
我想制作这种脚本文件。我怎么能这样做?
我将非常感谢你的帮助。
让我们说更一般的情况。
myscript1
文件执行上面的redis-server过程
另一个myscript2
文件执行上面的redis-server进程。
另一个myscript3
文件执行上面的redis-server进程。
如何同时运行三个脚本文件?
我想在ssh连接中做工作。
更糟糕的是,如果我不能使用screen
或tmux
??
答案 0 :(得分:0)
先做回声:
cd ~/Downloads/redis-4.0.1/src
echo "uid is ${UID}"
echo "user is ${USER}"
echo "username is ${USERNAME}"
exec ./redis-server
使用exec
是一个小技巧(如果您愿意,可以省略):它用redis-server
替换shell脚本,因此shell脚本根本不再运行。如果没有exec
,最终会让shell脚本等待redis-server
完成,如果脚本不再采取任何措施,这是不必要的。
如果您因某种原因不喜欢这样,可以保留原始订单:
cd ~/Downloads/redis-4.0.1/src
./redis-server & # run in background
echo "uid is ${UID}"
echo "user is ${USER}"
echo "username is ${USERNAME}"
wait # optional
答案 1 :(得分:0)
添加'&'行尾的char
./redis-server &
此char允许在后台运行作业,脚本继续。