Portál AbcLinuxu, 12. května 2025 22:27
Řešení dotazu:
for file in `find -type f -name "*.doc"` ; do cp "${file}" /storage/ ; done
find . -type f -name '*.doc' -exec cp {} /storage/ ';'
Ve druhém něco jako:
find . -type f -name '*.doc' | ( while read fname; do dir="/storage/`dirname $fname`" #tohle možná nemusí fungovat s mezerami v názvu mkdir -p "$dir" cp "$fname" "$dir"/ done)nebo elegantněji:
touch empty tar -cf muj.tar empty find . -type f -name '*.doc' -exec tar -rf muj.tar {} ';' tar -xf muj.tar -C /storage/ rm -f empty muj.tar /storage/empty
find
, xargs
a cp
, ako bolo zmienene.
Ak je potrebna aj adresarova struktura, myslim, ze by to mohol elegantne zvladnut rsync
.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.