Portál AbcLinuxu, 14. května 2025 01:46
Ř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" fiPř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.