LINUX.ORG.RU

shell


0

0

for i in `find ./ -type d -printf "'%p' "`; do echo $i; done

.....
'./Pictures/Maurits
Cornelis
Escher
(1898-1972)/picture
gallery
recognition
and
succes
1955

1972'
'./Pictures/Maurits
Cornelis
Escher
(1898-1972)/picture
gallery
back
in
holland
1941

1954'
....

хочу запихнуть это все в поиск, чтобы переназначит права доступа, а из за того, что он режет это все по пробелам (никак не могу понять почему, т.к. если вводить руками, например for i in 'asdf asd'; do echo \'${i}\'; done - то будет нормальный вывод> 'asdf asd') сделать это не получается:(... что нужно добавить в ту команду, чтобы он выводил это так, как это нужно для chmod?


Re: shell

Смотри тему 'SHELL'. Если я прав. понял вопрос :)

Valcker ()

Re: shell

> for i in `find ./ -type d -printf "'%p' "`; do echo $i; done 

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

find ./ -type d | while read line; do echo "$line"; done 
?

no1sm ★★ ()
Ответ на: Re: shell от kosmonavt

Re: shell

так можно же вообще вот так:

find ./ -type d -exec echo \"\{\}\" \;

no1sm ★★ ()
Ответ на: Re: shell от no1sm

Re: shell

только вот не с каждым финдом работать будет.

no1sm ★★ ()

Re: shell

> for i in `find ./ -type d -printf "'%p' "`; do echo $i; done

find . -type d -print0 | xargs -0 -n 1 echo

dilmah ★★★★★ ()

Re: shell

А почему не сразу что-то в стиле
find . -type d -exec chmod +rwx {} \;
???

io ★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.