Securely remove files or directories. srm removes each specified file by overwriting, renaming, and truncating it before unlinking. This prevents other people from undeleting or recovering any information about the file from the command line.
The srm command is not required with an SSD drive, a standard erase makes it difficult to recover data from an SSD.
Syntax
srm [OPTION]... FILE...
Options
-d, --directory
Ignored (for compatibility with rm(1))
-f, --force
Ignore nonexistent files, never prompt
-i, --interactive
Prompt before any removal
-r, -R, --recursive
Remove the contents of directories recursively
-s, --simple
Only overwrite with a single pass of random data
-m, --medium
Overwrite the file with 7 US DoD compliant passes (0xF6, 0x00, 0xFF, random, 0x00, 0xFF, ran-dom) random)
dom)
-z, --zero
After overwriting, zero blocks used by file
-n, --nounlink
Overwrite file, but do not rename or unlink it
-v, --verbose
Explain what is being done
--help Display this help and exit
--version
output version information and exit
srm, like every program that uses the getopt function to parse its arguments, lets you use the --option -option option to indicate that all following arguments are non-options. To remove a file called '-f' in the current directory, you could type either "srm -- -f" or "srm ./-f".
srm can not remove write protected files owned by another user, regardless of the permissions on the directory containing the file. The -s option overrides the -m option, if both are present. If neither is specified, the 35-pass Gutmann algorithm is used.
“The psychic task which a person can and must set for himself is not to feel secure, but to be able to tolerate insecurity” ~ Erich Fromm
Related macOS commands:
HT201949 - About Disk Utility‘s erase free space feature
rm - Remove files
rmdir - Remove empty folder