Я пытаюсь использовать plink на winXP для подключения к серверу linux и выполнения команды.Вот командная строка, которую я запускаю:
plink some_profile cd "$(echo 'T:\somedir\somesubdir with space in it\' | sed 's_\\_/_g' | sed 's_T:_/media/drive1_g')";unrar x 'somefile.rar'
Если я выполню часть этой команды (начнем с компакт-диска) непосредственно в окне Linux, она будет работать отлично.Но когда я запускаю его через plink, происходит сбой со следующей ошибкой:
bash: line 0: cd: /media/drive1/somedir/somesubdir: No such file or directory
Я думаю, что не правильно цитирую команду при прохождении через plink, поэтому она не передает кавычкинеобходимо обрабатывать пробелы в каталогах.Любые идеи о том, как это должно быть процитировано, чтобы это работало?
Если вам интересно, почему я вообще это делаю, это в основном скрипт, который я запускаю в Directory Opus, где я могу удалить файлЯ в настоящее время выделил (гора самбы).Каталог и имя файла передаются в сценарий, который удалит файл из моего удаленного окна.
Спасибо!
РЕДАКТИРОВАТЬ: Проблема решена благодаря ответу Микеля.Вот линия, которая работает сейчас, если кто-то еще столкнется с этим позже ...
plink some_profile cd \"$(echo 'T:\somedir\somesubdir with space in it\' | sed 's_\\_/_g' | sed 's_T:_/media/drive1_g')\";unrar x 'somefile.rar'