3

В RVM (Ruby Version Manager) вы можете создавать файлы .rvmrc для каждого проекта. Это обрабатывает базовую версию ruby и управление библиотекой (gem). Этот сценарий автоматически выполняется при cd в каталог. Тем не менее, это не более чем скрипт Bash. В скрипте есть одна особенная часть:

(
  if ! command -v bundle ; then
    gem install bundler --no-rdoc --no-ri
  fi

  bundle | grep -v 'Using' | grep -v 'complete' | sed '/^$/d'

) &

Так как это выполняется когда - либо раз , когда вы cd - диск в каталог, было бы хорошо , если бы я не получил следующий каждый раз , когда :

[1]+  Done                    ( if ! command -v bundle; then
    gem install bundler --no-rdoc --no-ri;
fi; bundle | grep --color=auto -v 'Using' | grep --color=auto -v 'complete' | sed '/^$/d' )

Есть ли способ, которым я могу запустить этот набор команд в фоновом режиме и не получать уведомления, когда он будет завершен. Или, по крайней мере, уведомить менее отвратительным способом, чтобы сообщение могло выглядеть так:

[1]+ Bundler is done! :-)

Спасибо!

2 ответа2

3

Попробуйте использовать disown , например:

sleep 1 & disown

От man bash:

disown [-ar] [-h] [jobspec ...]

Без параметров каждая спецификация заданий удаляется из таблицы активных заданий. Если jobspec отсутствует и не указан ни -a, ни -r, используется оболочка для текущего задания. Если задана опция -h, каждая спецификация заданий не удаляется из таблицы, а помечается так, что SIGHUP не отправляется заданию, если оболочка получает SIGHUP. Если спецификация заданий отсутствует и не указана ни опция -a, ни опция -r, используется текущее задание. Если спецификация заданий не указана, опция -a означает удалить или отметить все задания; опция -r без аргумента jobspec ограничивает выполнение операций заданиями. Возвращаемое значение равно 0, если в задании не указано допустимое задание.

0

Вы можете перенаправить весь вывод либо в файл журнала, либо в /dev /null. Просто измените последнюю строку с

) &

в

) 2>&1 >>/var/log/rvm-log &

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .