Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > *NIX системы: Общие вопросы > удаленное использование echo


Автор: gordmiand 17.12.2013, 13:42
Мне надо с компьютера А, работающего под ОС Windows 7, дописать определенную строку в двойных кавычках ( например “привет всем”) в определенный файл, находящийся на компьютере Б, работающий под ОС Ubuntu.
Пробую так:
Код

plink root@ip-адрес –pw пароль “ echo “ \”привет всем\” ” >> /home/user/file1”  
или
plink root@ip-адрес –pw пароль “ echo \”привет всем\” >> /home/user/file1”  

в любом случае в файл записывается строка привет всем БЕЗ кавычек….почему так происходит и как мне это исправить?
Причем ровно эта же команда
Код

echo \”привет всем\”  >> /home/user/file1

запущенная на самом компьютере Б, дает верный результат – в конец файла пишется  “привет всем”

Автор: Kekek 17.12.2013, 17:01
Под plink пока нет возможности проверить, но между двумя FreeBSD сработала такая конструкция:
Код

ssh 192.168.0.252 echo \'\" 123 \"\' \>\> /home/user/file1

Автор: tzirechnoy 20.12.2013, 16:51
Цитата
почему так происходит 


Потому, что plink тожэ съедает слэшы/кавычки.
В обоих вашых случаях -- только слэшы, в итоге кавычки приходят на удалённую систему неэкранированными и съедаются /bin/sh.

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)