LINUX.ORG.RU

Запуск bash-кода из файла .bat сразу после запуска cmd

 , , , ,


0

1

Всем привет!

Для целей разработки Постоянно приходится ребутить сервер или разрывать сессию putty. на рабочем PC стоит ms win 7. сделал bat файл чтобы не долго мучиться для подключения к серверу.

содержание примерно следующее:

1-я строка: «C:\_PROGRAM_FOLDE\PuTTY\putty.exe» -ssh root@718.245.78.98:311 -pw wzE324YGsfHdxXWJFb7z 2-я строка: cd /

команду первой строки функционал запускает, а вот дальше как передать код из бат-файла для исполнения в баш-оболочке не знаю. Подскажите пожалуйста как мне это заоптимизировать.

Заранее благодарен Drugger

читай msdn, technet и т.д.
type аналог юниксового cat
тут тебе в этом не помогут, зато забанить могут)

ubuntuawp ★★
()
Ответ на: комментарий от anonymous

cygwin - как приложение -> не катит

Спасибо за ответ, но я работаю с разных PC и не хочу устанавливать где либо что либо.

нет ли другого варианта прописать все в бат-файле?

a2201727
() автор топика

можешь скачать bash под win32, и создать .sh скрипт
лучше bash бери собраным под cygwin, и уже в .sh скрипт запиши что надо
сделай ассоциацию с bash.exe и дело в шляпе

ubuntuawp ★★
()
Ответ на: комментарий от ubuntuawp

забанить?

за что банить то? за страшные слова типа MS WIN? зачем тогда тег винды выложили в список? не думаю...

a2201727
() автор топика

А почему putty, а не plink?

Не проще ли перечислить команды через «&&» или ";" в одну строку?

Deleted
()
Ответ на: комментарий от a2201727

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

/bin/bash && cd /

и с помощью usermod измени на него шелл для юзера.

bvn13 ★★★★★
()

Тебе скрипт нужно запустить на сервере? У putty.exe можно же прописать запуск скрипта на сервере.

stamp
()

«C:\_PROGRAM_FOLDE\PuTTY\putty.exe» -ssh root@718.245.78.98:311 -pw wzE324YGsfHdxXWJFb7z

По сути у тебя открывается стороннее приложение к которому вторая команда никакого отношения не имеет. Покури настройки putty, может там есть команда выполняемая при входе на сервер(В MremoteNG помоему такая фишка есть) или добавь на сервере в .bashrc строку cd /

Deleted
()
Последнее исправление: log4tmp (всего исправлений: 1)
Ответ на: комментарий от Deleted

«А почему putty, а не plink? Не проще ли перечислить команды через «&&» или »;" в одну строку?"

plink не катит... на каждом компе на настраивать plink - упарюсь, уже пробовал. может быть какая нибудь bash хитрая пауза или ожидаловка - типа ожидание диалога и т.п.?

a2201727
() автор топика
Ответ на: комментарий от stamp

Тебе скрипт нужно запустить на сервере? У putty.exe можно же прописать запуск скрипта на сервере.

я так сейчас и делаю, просто задолбался каждый раз копировать на сервер файл.

a2201727
() автор топика
Ответ на: комментарий от Deleted

я все понял, буду чатать "В MremoteNG"!

спасибо

a2201727
() автор топика
Ответ на: комментарий от bvn13

БВН13 ответил: «ебе нужно изменить шелл для твоего юзера, под которым ты логинишься. создай скрипт с содержимым /bin/bash && cd / и с помощью usermod измени на него шелл для юзера.»

ТОГДА ВОПРОС: а куда поместить скрипт - в файл который я закачиваю? или в сам батник?

a2201727
() автор топика
Ответ на: комментарий от a2201727

Plink как раз и сделан для неинтерактивного использования. Это как микроскопом гвозди забивать.

А что его настраивать? Если с сайта putty используешь инсталятор, то plink уже в комплекте, либо скачать отдельно бинарник http://the.earth.li/~sgtatham/putty/latest/x86/plink.exe.

Deleted
()

напиши нужные скрипты на сервере, и их запускай.

emulek
()
Ответ на: комментарий от a2201727

а куда поместить скрипт

куда угодно. Лучше ИМХО в /usr/local/ НА СЕРВЕРЕ.

emulek
()
Ответ на: комментарий от Deleted

«Plink как раз и сделан для неинтерактивного использования. Это как микроскопом гвозди забивать. А что его настраивать? Если с сайта putty используешь инсталятор, то plink уже в комплекте, либо скачать отдельно бинарник http://the.earth.li/~sgtatham/putty/latest/x86/plink.exe."

там тонкая настройка нужна - BAT-ник все равно сразу не работает!!!

не хотел конечно очередной раз плинк ковырять, ну да ладно, раз аудитория советует - еще раз попробую :(

a2201727
() автор топика
Ответ на: комментарий от a2201727

bat что выпоняет? Почему нельзя через scp скопировать скрипт, через plink его запускать?

Я так и не понял чего ты добиваешься. Тебе все варианты неудобны. Поподробнее хоть скажи, что нужно.

Deleted
()

Форум - Development

толсто

anonymous
()
Ответ на: комментарий от anonymous

каково работать в cern, дорогой господин?

нормально, юзаем Qt для тулзовин по визуализации данных с коллайдера. а ты дальше сиди под вендузой, вот только работой эту мастурбацию не называй

anonymous
()
Ответ на: да много ты понимаешь! от a2201727

какую нафиг работу? ты сидишь в детской песочнице размахиваешь совочком и требуешь чтобы уважали твою «работу»?))))) иди трусы поменяй «работник»!)))

anonymous
()
Ответ на: комментарий от ubuntuawp

короче плинк глючит

короче, плинк глючит, потому что он запоминает сессии с прошлых заходов, надо постоянно чистить регистр, в общем полный геморой если надо запускать обработку для нескольких компов поочередно. потратил два дня -проще запускать через bash файлы, выложенные на сервак.

форум немного удивил. anonymous - полный урод, прочем моральный. таких надо сразу отключать. не пойму почему такой нет опции на этом форуме? у него наверное кроме монитора давно никого не было, вот он и пишет всякую ерунду какой он крутой и умный.

подскажите как мне его отключить, если на этом форуме это конечно предусмотрено?

"https://dl.dropboxusercontent.com/u/3314382/putty.bmp вот это в пути для кого? Что за извращение с запуском, сохрани сессию, затем putty.exe -load «moya_chudo_sessiya»" - полное непонимание о чем идет речь. все равно что ехать в питер из москвы во владивосток !!! anonymous - полный профессор логистики блин...

a2201727
() автор топика
Ответ на: комментарий от ubuntuawp

читай внимательно

баш запускается на серваке, если ты не понял! читай внимательно прежде чем комментировать в форме «иди», «читай», «качай». если такой умный иди общайся с такими же умниками как ты...

a2201727
() автор топика
Ответ на: читай внимательно от a2201727

ты не понимаешь? напиши скрипт на баше, который будет перенаправлять вывод на сервак
через ssh для windows
или ты все еще не понял? ssh user@host bash <(cat mylocalhostscript.sh)

ubuntuawp ★★
()
Ответ на: комментарий от ubuntuawp

да я понял

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

поэтому то я и упарился допиливать баш скрипт к плинковскому стандарту. не знаете - уточняйте в чем проблема!!! или вы думаете что я два дня мышкой кликал по батнику??? блин, если некоторым кажутся такие задачи очень простыми, но они их даже не пробовали делать, то я многих обломаю - дьявол в деталях, и если новичок форума спрашивает, значит не то что он НЕ ПОНИМАЕТ, просто уточняет детали... хотя бы сначала уточняли в чем загвоздка, а то начинают тут теории учить. суперадмины вокруг одни, а конкретно поговорить не с кем? или может кто примеры баш скрипта для запуска через батник пришлет?

чтобы раз - и скрипт одним нажатием мыши заработал и делал итерации на сервере. я думаю, что из тех кто тут оставил кучу комментов ни один не пришлет! потому что спешащий программист - плохо! думайте господа... урок вам на будущее, а флудить можно хоть 24 часа в сутки...

a2201727
() автор топика
Ответ на: да я понял от a2201727

единственный кто хоть немного вкурил был log4tmp

«C:\_PROGRAM_FOLDE\PuTTY\putty.exe» -ssh root@718.245.78.98:311 -pw wzE324YGsfHdxXWJFb7z

По сути у тебя открывается стороннее приложение к которому вторая команда никакого отношения не имеет. Покури настройки putty, может там есть команда выполняемая при входе на сервер(В MremoteNG помоему такая фишка есть) или добавь на сервере в .bashrc строку cd /"

------------------

ладно в общем флуд сплошной, никто ничего не подсказал...

a2201727
() автор топика
Ответ на: да я понял от a2201727

Facepalm
Баш и на винду есть
Настрочи скрипт, который шлет скрипт или строки на сервак
Никсовыц openssh тож под винду есть

ubuntuawp ★★
()

Ты гомосек, что ли? Зачем тебе putty? Поставь cygwin.

anonymous
()

http://the.earth.li/~sgtatham/putty/0.63/htmldoc/Chapter4.html#config-ssh
Достал ныть, я тебе все подсказал, даже скрин прилепил. Если настолько сложно прочесть пару строк на ингле. Завтра с работы пришлю в скринах всю эту связку. нет дома винды.

anonymous
()
Ответ на: комментарий от anonymous

http://putty.org.ru/articles/putty-ssh-autologin.html
http://putty.org.ru/features/auto-command.html
результат
https://dl.dropboxusercontent.com/u/3314382/putty_ssh.JPG
И снова повторю, не надо велосибедить батник, настрой сеанс, сохрани его. Вызывается нужный сеанс ключем -load «имя_сеанса». Если серверов много, то создаешь несколько сеансов, вот тут уж как душе угодно, хочешь батником, хочешь чертом в ступе.

anonymous
()

Оффтопик: а что за цели, для которых постоянно сервер перезагружаете?

belkabelka
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.