Я пытаюсь запустить процесс, чтобы открыть два дополнительных окна оболочки и отправить им команды для запуска некоторых модулей узлов, которые я установил. Это мой первый раз, когда я делаю скрипты bash, поэтому, если я что-то прикручу, не стесняйтесь, дайте мне знать.Команда оболочки для открытия других команд оболочки и запуска
У меня есть этот скрипт
#!/bin/bash
# [-g]
# [-h]
# [-l <location to start the http-server on --default ./>]
# [-p <port to start the http-server on --default "8111">]
run_gulp=false
run_http=false
run_http_port=8111
run_http_location=./
while getopts ghl:p: opt; do
case $opt in
g)
run_gulp=true
;;
h)
run_http=true
;;
l)
run_http_location=$OPTARG
;;
p)
run_http_port=$OPTARG
;;
\?)
echo "Invalid option: -$OPTARG" >&2
;;
esac
done
if [ $run_gulp == true ]
then
start mintty "gulp" # this works
fi
if [ $run_http == true ]
then
start mintty "http-server $run_http_location -p $run_http_port"
fi
я его в файле с именем startdev в папку, которая находится на моей переменной PATH (я на Windows 10), так что я могу открыть оболочку из любой точки мира и введите startdev -g
или startdev -g -h
, чтобы запустить это.
Это все, что я могу добавить, когда он открывает оболочку и отправляет команду gulp, она обнаруживает мой gulpfile и может запускать задание по умолчанию на нем, как я этого хочу. Тем не менее, http-сервер не делает то же самое, он просто говорит мне http-server ./ -p 8111: No such file or directory
.
Ну, когда вы так выразились, это имеет смысл! Это решило проблему, спасибо тонну! –