2016-05-07 4 views
1

им пытаются захватить результат найти в пакетном сценарии он работает отлично, пока я не добавить еще одно слово пример чужеродные (работ) чуждо 1 (не работает)SSH найти команду и сохранить

found201=$(ssh [email protected] find "${folder201[@]}" ! -path "*/.wdmc/*" -type f -iname "*$ffind*" | sort) 

, если я запустить в терминале

found201=$(ssh [email protected] 'find /shares/Public/ /shares/Videos/ -type f -iname "*alien 1*"' | sort) 

с «найти .....», это работает, но ничего не плюс его не используя строку/массива

когда я объявление d «» сценарию получить плохую замену (предполагая, что это теперь относится как строка не команда)

мне нужно использовать найти, как позже мне нужно удалить файлы и т.д. в установленном порядке

, как я могу добавить ' ", чтобы найти и использовать строки/массив


работает нормально получить это

++ ssh [email protected] find /shares/Public/ /shares/Videos/ '' '!' -path '*/.wdmc/*' -type f -iname '*alien 1*' 
++ sort 
find: unrecognized: 1* 
+0

Что делает вывод команды, если вы запускаете он без части '= $()'? –

+0

found201 = ssh [email protected] find "$ {folder201 [@]}"! -path "* /. wdmc/*" -type f -iname "* $ ffind *" | сортировать получить [email protected]: команда не найден добавления 'в конце и на букву находки: непризнанная: 1 * – user1184628

+0

Э нет, только 'SSH' ... ''. Вы не можете использовать 'found201 ='. –

ответ

0

Попробуйте, как это, приложив всю find команду в двойных кавычках, и у петь одиночные кавычки внутри:

found201=$(ssh [email protected] "find ${folder201[@]} ! -path '*/.wdmc/*' -type f -iname '*$ffind*'" | sort) 

Однако есть один нюанс: это не будет работать с папками в ${folder201[@]}, которые содержат пробелы.

+0

, не используя множественный шаблон – user1184628

+0

, поиск не отправляется должным образом при использовании ssh – user1184628

+0

++ ssh [email protected] .1.201 find/shares/Public// share/Videos/'' '!' -path '* /. wdmc/*' -type f -iname '* alien 1 *' find: unrecognized: 1 * – user1184628

-1

думаю я отсортировали это

found201=$(ssh [email protected] "find ${folder201[@]} ! -path '*/.wdmc/*' -type f -iname '*$ffind*'" | sort) 

изменил '$ {folder201 [@]} до $ {folder201 [@]} (удаленные одиночные кавычки)

+0

cheers guys отсортировано – user1184628

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