сценарий меню по ssh

[118227] Не знаю, зачем они это сделали. Однако вот мое предположение.[12188]Для начала стоит отметить, что в системе GNU/Linux вы, конечно, можете перейти на vt1, vt2 и т.д. Там вы получаете оболочку для входа в систему. В системе OS X эквивалента нет. Единственный способ получить доступ к основам UNIX - это через терминальный эмулятор или через однопользовательский режим (оговорка: я никогда не пользовался однопользовательским режимом; это IIRC, управляемый с помощью командной строки, но я могу ошибаться). Поэтому, в OS X, что бы ни было по умолчанию в эмуляторе, это по умолчанию для всей системы.[12189]Теперь, зачем вам делать оболочку по умолчанию для входа в систему? Есть пара (читайте: не так уж и много) причин, по которым я могу придумать это сделать.[12190]Это обеспечит вам постоянный пользовательский опыт, если вы вставите SSH в ящик. (Особенно важно для серверной версии OS X - предположительно, если вы работаете с сервером OS X, вы новичок)[12191]Оболочкой по умолчанию OS X была [118831]tcsh[118832]. Это примерно такая дикая догадка, которую вы можете получить, но может быть, что [118833]tcsh[118834] обычно что-то делали, когда запускались как оболочка для входа в систему, и исторический шаблон застрял. (Сомневаюсь, однако - может быть, один из старых завсегдатаев мог бы нам сказать.)[12192] "Мы - Яблоко". Мы - поставщики самого большого дистрибутива UNIX на планете. Неважно, насколько банальны наши причины; если мы принимаем решение, ваш инструмент должен с этим справиться"[12193]Честно говоря, я использую Дарвина ~6 лет и не могу ответить на этот вопрос должным образом. Для меня это тоже не имеет смысла.[12194]Чтобы ответить на ваш вопрос, [118703]bash[118704] не исправлен или что-то в этом роде (по крайней мере, для этого). Эмулятор терминала по умолчанию запускает оболочки для входа в систему по умолчанию, и предположительно iTerm копирует это.[118238].
2
20.02.2015, 04:54
2 ответа

Вы должны сделать:

root@debian:/home/mohsen# ssh mohsen@192.168.1.10 "~/test.sh"
mohsen@192.168.1.10's password: 
What machine is sick ?192.168.1.4
1) Ping 192.168.1.4  3) Option 3
2) Option 2      4) Quit
Please enter your choice: 1
you chose to ping 192.168.1.4
PING 192.168.1.4 (192.168.1.4) 56(84) bytes of data.
64 bytes from 192.168.1.4: icmp_req=1 ttl=64 time=0.370 ms

--- 192.168.1.4 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 0ms
rtt min/avg/max/mdev = 0.370/0.370/0.370/0.000 ms
Please enter your choice: 

Синтаксис удаленного прогона:

ssh account@remote_machin  "command_for_run_on_remote_machine"

выше синтаксиса использовался для резервного копирования для Sysadmins.

0
27.01.2020, 22:12

Для выполнения интерактивной команды в командной строке ssh необходимо сообщить ssh о назначении tty на удаленном конце. (Обычно это не беспокоит, и в большинстве случаев это хорошее предположение.) Добавьте флаг -t, чтобы выделить tty:

ssh -t someaccount@somemachine mysscript.sh
2
27.01.2020, 22:12

Теги

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