Portál AbcLinuxu, 4. prosince 2025 16:30
Řešení dotazu:
find /cesta/co -exec /mojecesta/spravto.bash {} \;
Samozřejmě je možné a asi vhodné find modifikovat, třeba přidat -type f nebo i doplnit regular expresion co hledat třeba něco takto:find /cesta/co -type f -regex '.*[\\:\?\*„“\>\<\|\x0].*' -exec /mojecesta/spravto.bash {} \;
a v spravto.bash něco jako:
#!/bin/bash
FROM="$1"
TO="${1//[\\:\?\*„“\>\<\|\x0]/_}"
#FROM="${FROM//\*/\\*}"
#FROM="${FROM//\?/\\?}"
if [ "$FROM" != "$TO" ]; then
echo mv "$FROM" "$TO"
fi
Předposlední řádek ma navíc 'echo' k vůli bezhlavému kopírování odcamcáď. Takže je třeba 'echo' smazat aby to něco začalo dělat nebo použít rúčo to co to vysype - s tím echo to jen vypíše co by to tak mohlo dělat.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.