如何 运行 来自不同目录的多个 .sh 文件
How to run multiple .sh files from different directories
SO 我有一个 BSD 服务器,想托管一个 Minecraft BungeeCoord 服务器。问题是服务器文件位于不同的目录中
EG: /home/name/bungee/servers/生存/start.sh AND /home/name/bungee/servers/大厅/start.sh
有没有办法让一个文件可以 运行 来自不同目录的多个文件
?
澄清一下,我之所以要这样做是因为BSD服务器一次只能获取1个文件,比如shell/terminal。
编辑:我最终使用的命令是 screen
有点按最低到最高排序
示例 1
sh /home/name/bungee/servers/Survival/start.sh &
sh /home/name/bungee/servers/Lobby/start.sh &
&
将进程作为后台作业运行,释放终端 (STDIN
),但不是 STDOUT
和 STDERR
流,这意味着输出仍会进入终端
使用 ksh(1)
的 jobs(1) 命令(OpenBSD 默认 shell)来查看你的 shell 以后可以控制的那些工作
示例 2
在 cd
路径变短后
cd /home/name/bungee/servers
sh ./Survival/start.sh &
sh ./Lobby/start.sh &
您也可以使用 shell 的重定向功能将两个输出重定向到文件而不是屏幕,例如 > output.log 2>&1
示例 3
使用多个(虚拟)终端? (ctrl+alt+f1 和 ctrl+alt+f2) 分别登录,然后按 tty(4)
启动脚本
示例 4
使用编程语言库,例如 IPC::Cmd to fork processes with run_forked 函数
SO 我有一个 BSD 服务器,想托管一个 Minecraft BungeeCoord 服务器。问题是服务器文件位于不同的目录中 EG: /home/name/bungee/servers/生存/start.sh AND /home/name/bungee/servers/大厅/start.sh
有没有办法让一个文件可以 运行 来自不同目录的多个文件 ?
澄清一下,我之所以要这样做是因为BSD服务器一次只能获取1个文件,比如shell/terminal。
编辑:我最终使用的命令是 screen
有点按最低到最高排序
示例 1
sh /home/name/bungee/servers/Survival/start.sh &
sh /home/name/bungee/servers/Lobby/start.sh &
&
将进程作为后台作业运行,释放终端 (STDIN
),但不是 STDOUT
和 STDERR
流,这意味着输出仍会进入终端
使用 ksh(1)
的 jobs(1) 命令(OpenBSD 默认 shell)来查看你的 shell 以后可以控制的那些工作
示例 2
在 cd
路径变短后
cd /home/name/bungee/servers
sh ./Survival/start.sh &
sh ./Lobby/start.sh &
您也可以使用 shell 的重定向功能将两个输出重定向到文件而不是屏幕,例如 > output.log 2>&1
示例 3
使用多个(虚拟)终端? (ctrl+alt+f1 和 ctrl+alt+f2) 分别登录,然后按 tty(4)
启动脚本示例 4
使用编程语言库,例如 IPC::Cmd to fork processes with run_forked 函数