#bash #ssh #scp
Хочу скопировать с удаленного компьютера все файлы - с каким-нибудь фильтром. Например, по названию: содержащие слово file как-то так: $ scp user@192.168.1.10:/home/user/$(ls | grep file) Не работает. Как можно это сделать - без копирования всего содержимого папки и фильтрации на локальном компьютере?
Ответы
Ответ 1
вложенная оболочка (определяемая конструкцией $()) будет запущена на локальной машине. поэтому результаты выполнения команды ls в данном случае вряд ли могут быть полезны. копировать в текущий каталог файлы, содержажие слово file, можно, например, так: $ scp user@192.168.1.10:/home/user/*file* . искомое слово можно поместить в переменную: $ v=file scp user@192.168.1.10:/home/user/*$v* . более того, в ту же переменную можно поместить и поисковые квантификаторы: $ v='*file*' scp user@192.168.1.10:/home/user/$v .
Комментариев нет:
Отправить комментарий