Master-X
Форум | Новости | Статьи
Главная » Форум » Программинг, Скрипты, Софт, Сервисы » 
Тема: Запустить в SSH файл с Linux командами (батч)?
цитата
26/03/07 в 00:24
 Vyacheslav
Есть файл с 10тысячами wget комманд записанных с новой строки в файле.
Думаю буфером их заганять в консоль - гемор.

Подскажите как можно залить все это в файле на сервер и запустить етот файл как пакет команд на выполнение через SSH?
Какой форрмат записи в файл команд (нужна ли ";" в конце каждой команды\строки)?
цитата
26/03/07 в 00:30
 zteam
Залей файл на сервер. Зайди на сервер по ssh. Открой файл, пропиши самую верхнюю строчку:
#!/bin/sh
Сохрани файл. ; необязательны после каждой команды, если они все с новой строчки. Дальше chmod 700 <имя файла>.
И ./<имя файла> - это запуск.
цитата
26/03/07 в 00:39
 Vyacheslav


Огромное спасибо!

А не подскажешь, если у меня там одни wget команды как я увижу, что все прошло нормально или хотябы закончилось все?
И что будет, если соединение мое по SSH оборвется в момент выполнения? (работа остановиться?)
цитата
26/03/07 в 02:04
 zteam
по ./<file> у тебя он запустится и как только отработает, то у тебя появится командная строка и ты сможешь набирать команды. Чтобы запустить и выполнение не прервалось по обрыву соединения, есть 2 выхода:
1. Использовать screen
2. Запустить в бэграунде выполнение команды через & в конце её.
Я бы использовал screen.
цитата
26/03/07 в 04:10
 localhost
screen можно заменить на
nohup имя_скрипта &

в конце скрипта можно прописать нечто
echo == FINISHED ==

чтобы определить что оно все-таки финишед
цитата
26/03/07 в 05:11
 Vyacheslav


как же все-таки при реконнекте SSH я смогу контролировать или хотябы видеть ход выполнения скрипта?
цитата
26/03/07 в 05:58
 LADMIN
Vyacheslav писал:
как же все-таки при реконнекте SSH я смогу контролировать или хотябы видеть ход выполнения скрипта?

Создается файл nohup.out, в который записывается все. Смотри файл этот , если скрипт закончил работу, то в конце будет FINISHED. Если нет, то увидеш как качается и выполняется еще скрипт.
цитата
26/03/07 в 09:41
 johnson
Vyacheslav писал:
как же все-таки при реконнекте SSH я смогу контролировать или хотябы видеть ход выполнения скрипта?

еще можно по процессам
ps -ax|grep scriptname
если чего то выводит, значит работает , если нет - нет
цитата
26/03/07 в 09:42
 Vyacheslav
Ок! С третьего раза получилось!
В первый двух разах не добавил ./ перед именем скрипта. Во второй что-то в правах не понравилось скрипта.

Создался файл nohup.out с нулевым размером. В этом случае (если 0 размер) можно быть уверенным что не добавился лишний процесс?


Эта страница в полной версии