Это связало `nohup и` и `откреститься`. Вопрошающий спрашивает о последнем. Мой щенок Бишон слюнки текут только на Собачьей площадке. Я встретил еще одного владельца собак и он делает то же самое. Не слишком уверен, что это значит, но моя собака любит ходить в парк. @Камарадж, Да, я уверен, что "сдвиг" нажата. На моей клавиатуре, что единственный способ типа `?`. Запуск GUI-приложений как root с помощью команды sudo потенциально может изменить файлы принадлежат суперпользователю. Один особенно неприятный файл это может произойти к `~/.ICEauthority`. Это может предотвратить вас от входа в систему. Погугли "ICEauthority" и вы увидите, что результаты будут полно людей, которые не могут войти в их системы, потому что файл стал владельцем пользователя root. Я просто выбрал этот один, как это на арке, ОС пользователя.

Вопрос в том, что при запуске вашего цикла (за "$@"), вариант все же первый элемент списка, который вы петлю над. Вы можете удалить первый элемент $@ с переключением до цикла.


Я предпочитаю, чтобы мой синтаксический анализ командной строки и действия разделены:

#!/Бен/ш

сбросить do_header
сбросить do_footer

# петля до конца допустимые варианты...
пока правда; сделать
 случае $1 в
 - заголовок) do_header=1 ;;
 --футер) do_footer=1 ;;
 *) # предположим конце варианты
перерыв
эсок
 сдвиг # мы обработали допустимый вариант, переложить его из списка
сделано

# создаем временный файл, который мы будем использовать несколько раз
tmpfile=$(mktemp)

# удалить временный файл на нормальный выход (в bash, также на срок/ИНТ)
ловушка РМ -Ф "$tmpfile"' выход

# Для каждого файла, скопировать его во временный файл,
# затем добавить заголовок и нижний колонтитул, как просили.
# Поскольку мы разбить исходный файл с перенаправлением 
# мы не будем изменения разрешений на файл.

# На данный момент, действительные варианты (любое количество
# - заголовок и-футер) были вычеркнуты
# список аргументов, так что массив $@ теперь предположительно только
# содержит имена файлов, которые должны быть изменены.

по пути делать
 СР -- "$путь" "$tmpfile"
 кошка ${do_header:+"заголовок"} "$tmpfile" ${do_footer:+"подвал"} >$путь
сделано

Это дополнительно позволяет добавление верхнего и нижнего колонтитулов в набор файлов с одного вызова.

Параметр подстановки ${ВАР:+слово} расширяется к слову , если переменная ВАР установлен и не пустой.