How to Delete All Files Starting with ._ from The Shell in Linux

How can I delete all files starting with ._ from the shell in Linux?

Try something like:

cd /path/to/directory; \rm -rf ._*

OR if there are recursive files with in subfolders then try:

find /path/to/directory -name "._*" -type f -print0| xargs -0 \rm -rf

posix shell script: recursively remove all files starting with a certain prefix

$ find <DIRNAME> -type f -name '._*' -delete

  • <DIRNAME> -- the root directory.
  • -type f -- only regular files, not directories (if that's what you want).
  • -delete -- what to do with the files (delete them) (if omitted, will print file names)

Deleting files which start with a name Python

import os, glob
for filename in glob.glob("mypath/version*"):
os.remove(filename)

Substitute the correct path (or . (= current directory)) for mypath. And make sure you don't get the path wrong :)

This will raise an Exception if a file is currently in use.

Bash script to recursively step through folders and delete files

Change directory to the root directory you want (or change . to the directory) and execute:

find . -name "._*" -print0 | xargs -0 rm -rf

xargs allows you to pass several parameters to a single command, so it will be faster than using the find -exec syntax. Also, you can run this once without the | to view the files it will delete, make sure it is safe.

Find all files with a filename beginning with a specified string?

Use find with a wildcard:

find . -name 'mystring*'

Delete .DS_STORE files in current folder and all subfolders from command line on Mac

find can do that. Just add -delete:

find . -name ".DS_Store" -delete

Extend it even further to also print their relative paths

find . -name ".DS_Store" -print -delete

For extra caution, you can exclude directories and filter only for files

find . -name ".DS_Store" -type f -delete


Related Topics



Leave a reply



Submit