Intereting Posts
Настройка PDF-документа CUPS для вывода PDF / A? Таинственный файл, который я не могу удалить Как я могу зашифровать папку в Linux, используя только командную строку? linux: Как определить лучший формат файловой системы? Как правильно размонтировать установленные каталоги после выполнения chroot? Пользовательские временные файлы Yum (/ var / tmp / yum *) заполняются данными репо Как исправить dpkg-buildpackage: команда не найдена? Как настроить мой DNS при перезаписи resolv.conf? Как сделать gvfs mount fat / vfat дисков с именами 8.3, установленными в нижнем регистре на автоматическом монтировании? Как заменить символ пробела в имени ветки дампа SVN? Как эффективно управлять файловой системой? Заменить столбцы с помощью оболочки Как сделать мигающий текст в bash? Легкий способ вставить вывод командной строки для вставки биновых сервисов? Установка переменных readline в оболочке

Удаленный Unzip через SSH не работает

Попытка создать скрипт, который скопирует некоторые файлы между машинами и распакует их. (Запуск CentOS 6.7) Кажется, что все работает, кроме unzip части,

Это команда, дающая мне некоторые проблемы,

 ssh -i /root/.ssh/qasynd.key file_sync@10.5.107.82 'unzip /home/root/tmp/*.zip' 

Игнорируя структуру пользователя / каталога, как это только для команды, что может вызвать это? Я попытался указать его /usr/bin/unzip а не просто unzip .

Это очень распространенная проблема с linux zip … если вы это сделаете

 unzip *.zip 

и вы скажете три файла:

 a.zip b.zip c.zip 

он расширяется, чтобы означать

 unzip a.zip b.zip c.zip 

который выглядит хорошо, но он сообщает unzip, чтобы разархивировать b и c изнутри a, что неверно. Это не будет работать. (проверьте его в локальной системе).

Решение

 unzip '*.zip'. 

Вам нужно будет избежать «в вашем ssh (например, обратная косая черта или использовать удвоения).