Ruby bash端口别名智能精简启动
我想要一个启动本地开发服务器的别名(ts)。脚本应该测试3000开始的开放端口,并使用第一个可用端口。此外,有些站点需要一个机架文件,因此需要-R config.ru。此脚本应检查config.ru文件的当前目录,并将其添加到别名(如果存在) 目前,要启动本地开发环境,我运行:Ruby bash端口别名智能精简启动,ruby,bash,thin,Ruby,Bash,Thin,我想要一个启动本地开发服务器的别名(ts)。脚本应该测试3000开始的开放端口,并使用第一个可用端口。此外,有些站点需要一个机架文件,因此需要-R config.ru。此脚本应检查config.ru文件的当前目录,并将其添加到别名(如果存在) 目前,要启动本地开发环境,我运行: alias ts="thin -R config.ru -p 3000 start" 通常,我需要运行多台服务器来测试不同的站点,因此我创建了其他别名: alias ts1="thin -R config.ru -
alias ts="thin -R config.ru -p 3000 start"
通常,我需要运行多台服务器来测试不同的站点,因此我创建了其他别名:
alias ts1="thin -R config.ru -p 3001 start"
好吧,您可以做一些聪明的事情,看看使用netstat和类似的命令已经绑定了哪些端口
netstat -anp | grep LISTEN | awk '{print $4}' | sed s/".*:"//g | sort -n -u
但是,如果你不关心丑陋的控制台垃圾邮件,你可以继续尝试端口,直到你得到这样一个
for ((port=3000; port <= 3010 ; port++)); do
if thin -p $port start; then break; fi
done
for((端口=3000;端口)您可以将命令和if
:if thin-p$port start 2>/dev/null;然后break;fi