Когда я пытаюсь запустить команду на удаленном хосте

ssh user@example.com "fswebcam -d /dev/video0 --save -" > img1

Я всегда получаю в верхней части файла IMG1, смешанного в

^]kfswebcam -r 1280x960 -d /dev/video0 --save -\ÿØÿàJFIFÿþ>CREATOR: gd-jp

Что приводит к тому, что файл больше не является допустимым изображением JPEG

3 ответа3

1

Я нашел проблему.
Это в оболочке fish, когда я запускаю /bin/bash ssh user@example.com "fswebcam -d /dev/video0 --save -" > img1 все работает отлично.
Нет перепутанных заголовков в изображении JPEG

0

Довольно окольный способ сделать это, но вы можете использовать:

ssh user@example.com "fswebcam -d /dev/video0 --save -"  | tail -n +2 > img1
0

Кажется, это какая-то конфигурация эха на хосте example.com . Я только что проверил с ssh localhost date и он просто напечатает дату без какого-либо эха команды date. Попробуйте подтвердить это, запустив дату и проверив, получает ли это также первую строку эха.

Попробуйте временно отключить такие файлы, как .bashrc , .profile и т.д., Переименовав или переместившись из домашнего каталога, и посмотрите, не появилось ли еще эхо. Имеет ли значение изменение оболочки входа для user на /bin /sh?

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .