2013-03-04 4 views
3

Я пытаюсь восстановить только вложенные папки из удаленного окна Windows с помощью следующей структуры каталогов, используя smbclient. Есть ли способ выдавать команду только для получения папок? Команда, которую я до сих пор:Только получить папки с помощью smbclient

smbclient //$host/$share -U"$USER%$PASSWORD" -c 'cd RootFolder; prompt; recurse; mget Test*\'

RootFolder/ 
    Test001/ 
     Revisions.txt 
    Test002/ 
     Revisions.txt 
    Test003/ 
     Revisions.txt 
    Test001=2012_12_05.log 
    Test001=2012_12_06.log 
    Test001=2012_12_07.log 
    Test001=2012_12_08.log 
    ... more log files here 

ответ

1

Вы могли бы трубы на вывод команды через grep, ища линий, которые заканчиваются /.

smbclient ... | egrep '/$' 

Вместо этого вы можете смонтировать удаленную файловую систему Windows, а затем использовать команду find для поиска папок. Команда find будет искать рекурсивно только для всех каталогов. Это был бы мой рекомендуемый подход. Предполагая, что вы установите окна файловой системы, как /mnt/win_host ...

find /mnt/win_host -type d 
+0

Маунт работал с 'найти RootFolder/-type d -iname "Test *" -exec ф -r '{}'. \; ' – illumi

Смежные вопросы