Мне нужно создать скрипт в Linux, чтобы получить с сервера несколько файлов. После начала загрузки файлов необходимо закрыть сеанс, но без остановки загрузки.
Как мне это сделать?
Если вы имеете в виду продолжить загрузку файлов в фоновом режиме после выхода из сеанса входа в систему, то вам нужно nohup.
Например:
$ nohup download-script &
$ exit
рассчитывая на то, что вы создали загрузочный скрипт, содержащий ваши команды.
Вы можете использовать screen
команду, чтобы создать "экранную" сессию на вашем компьютере. Screen - это полноэкранный оконный менеджер, который мультиплексирует физический терминал между несколькими процессами (обычно это интерактивные оболочки).
Экраны можно отсоединить, оставив фоновые процессы запущенными, а затем, если хотите, подключить их позже. Это позволяет вам закрыть окно терминала или закрыть сеанс без потери ваших процессов. Это особенно полезно, если вам нужно оставить что-то работающее на длительный период времени или иметь темпераментное соединение с вашим сервером.
Запустите man screen
чтобы увидеть, как его использовать. (подсказка: это больно просто)
В качестве альтернативы, если вам просто нужно запустить процесс или скрипт в фоновом режиме, но вы не хотите оставлять "сеанс" открытым, рассмотрите возможность использования:
progname [arguments] &
Любая команда, оканчивающаяся на &
будет выполняться в фоновом режиме. Конечно, это означает, что ваша программа не требует вмешательства пользователя.