Скрипт Disown, background, dump to null

Раньше у меня был сценарий (в далеком прошлом), который позволял мне выполнять НИЧЕГО в терминале и магическим образом открещивался и работал в фоновом режиме при выводе любого вывода в ноль. Возможно, даже nohup'd ... Я не помню. Он находился в / usr / local / bin или / usr / bin / и назывался 'ds' (я знаю, что имя не имеет к этому никакого отношения, но я думаю, что некоторые из вас, возможно, сделали то же самое как я делал в тот день).

В основном, чтобы выполнить команду полностью в фоновом режиме и не связывать окно терминала, я просто набрал бы:

ds command

или

ds sudo command

Я не вспомните, где я его нашел и не создал ли я его сам. Это было довольно гениально, так что, думаю, я нашел это в другом месте. :)

Может ли кто-нибудь помочь снова создать такой скрипт?

TIA!

0
задан 29 April 2019 в 04:56

2 ответа

Я не уверен, что Вы настроили прежде, но можно произвести stderr и stdout кому: /dev/null, и disown процесс:

command > /dev/null 2>&1 & disown
$ tail -f /var/log/messages > /dev/null 2>&1 & disown
[1] 12345
$

Не путать & и && здесь. & выполняет команду в фоновом режиме, в то время как disown 'de-пары' фон от терминального процесса немного. Можно настроить сценарий Bash, функцию, или исказить для обертывания команд во что-то подобное.

0
ответ дан 29 April 2019 в 04:56

Боже мой! Я нашел именно то, что искал на одном из моих * nix-компьютеров, и скопировал его на тот, который действительно в этом нуждается. Расположен в "/ usr / local / bin / ds"

Вот копия сценария на тот случай, если кому-то понравится:

#!/bin/sh

if test -t 1; then
  exec 1>/dev/null
fi

if test -t 2; then
  exec 2>/dev/null
fi

"$@" &

Теперь, когда я посмотрю на него, я Я не совсем уверен, что это отрекается от процесса, так как кажется, что он просто выполняет команду как фоновый процесс. Мысли?

0
ответ дан 29 April 2019 в 04:56

Другие вопросы по тегам:

Похожие вопросы: