Javascript 如何连接多个bash命令?
使用此bash_配置文件命令,尝试在一个别名命令中运行后端和前端服务器,即Javascript 如何连接多个bash命令?,javascript,node.js,bash,macos,concatenation,Javascript,Node.js,Bash,Macos,Concatenation,使用此bash_配置文件命令,尝试在一个别名命令中运行后端和前端服务器,即ins alias is='ivui && npm run start:backend' alias ib='ivbe && npm run start:dev' alias ins='ib && is' 指的是不同的项目文件夹,它启动服务器,ib也指的是不同的文件夹和服务器。尝试将两者合并,但第一个只会触发,&&合并不会执行 Concatnpm有助于从单个项目文件夹中组合
ins
alias is='ivui && npm run start:backend'
alias ib='ivbe && npm run start:dev'
alias ins='ib && is'
指的是不同的项目文件夹,它启动服务器,ib也指的是不同的文件夹和服务器。尝试将两者合并,但第一个只会触发,&&合并不会执行
Concat
npm
有助于从单个项目文件夹中组合两台服务器,但想知道如何使用bash_profile
实现这一点?因此,只要执行ins
,它就必须首先启动后端服务器,同时也启动前端。双别名命令(ib&&is
)不起作用的原因是,根据man bash
:
别名允许用字符串替换用作别名的单词
简单命令的第一个字
显然,如果运行ib&&is
,其中ib
和is
都是别名,那么它将只运行ib
有了这些,我相信你的问题会有一个不同的更好的解决方案。您可以使用screen
在后台运行这两个命令,还可以随时查看它们的终端输出
这个想法是:1。启动屏幕
会话;2.在该会话中打开两个窗口;3.在第一个窗口中运行npm Run start:backend
,在第二个窗口中运行npm Run start:dev
以下是您需要的:
screen -S Servers -t backend_window -A -d -m
screen -S Servers -X screen -t dev_window
这将启动一个屏幕
会话,其中包含后端窗口
和开发窗口
。现在,您只需在这些窗口中运行两个命令:
screen -S Servers -p backend_window -X stuff $'npm run start:backend\n'
screen -S Servers -p dev_window -X stuff $'npm run start:dev\n'
现在,您的两个npm命令都同时在后台运行。您只需将这4行代码放入.bashrc
文件,它将在登录时启动
但是这种方法最好的部分是,通过附加屏幕并查看窗口内部,您可以直观地看到这些npm命令的运行情况。只需运行:
screen -rx Servers
默认情况下,这将显示第一个窗口。让我们拆分屏幕,并排显示两个窗口:
Ctr-A + | <- will split the screen into 2 sections
Ctr-A + Tab <- will shit cursor to the new section
Ctr-A + " <- will show you your 2 windows, just pick the dev
Ctr-A+|您可以创建一个函数并在其中添加别名,例如
stopdev () (
cd "$HOME/website" && {
make website_stop
ret=$?
make backend_stop && return $ret
}
)
此示例还有一个返回代码,并调用了一个子shell来运行该函数,因此在调用该函数后,文件路径不是$HOME/website
有关以下网页的更多信息,
当前设置会发生什么情况?ins没有被执行吗?如果您现在运行is
,然后运行ib
,一切都会像它应该的那样开始吗?对于ins,只执行ib,它不会到达is命令。两者都依赖NodeMoney,它将独立运行@codemonkey而不是集体运行可能运行ib会返回none 0退出状态?