$ locate /.DS_Storeand then again (because it's cheap) to clear the files:
$ locate /.DS_Store | xargs rm
find can do the same, without needing a possibly outdated database:
find / -name .DS_Store -type f
(-print is implicit, -type f restricts to regular files)
And then, to avoid various traps with "funny" path names, pass found path names around ASCII-NUL separated:
find / -name .DS_Store -type f -print0 | xargs -0 rm
Or invoke rm directly from find:
find / -name .DS_Store -type f -exec rm \;
(Backslash or quotes around the semicolon are needed in bash)
The same, but be smarter (like xargs, collect arguments instead of invoking rm for every single file):
find / -name .DS_Store -type f -exec rm {} \+
(Again, backslash or quotes around the plus are needed in bash)
Or have find delete the file without forking a separate process:
find / -name .DS_Store -type f -delete
Optionally show what is deleted while deleting:
find / -name .DS_Store -type f -print -delete
Alexander
In reply to Re^6: uparse - Parse Unicode strings
by afoken
in thread uparse - Parse Unicode strings
by kcott
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |