Understanding `rm`
16 August, 2020
Warning:
Thermcommand could potentially destroy your whole filesystem.
Use with caution.
rm is a destructive terminal command. It’s used to permanently delete files and directories, forever, with no concept of a ‘trash can’.
Destroy a file:
rm someFile.txtThat’s it. Its gone. No warning. No confirmation. No Undo’s!
You can use glob patterns to drill down into directories and delete all files with a paticular extension.
rm src/assets/**/*.cssThis will delete all .css files which are within the src/assets directory and all of its sub-directories.
And if you want to delete all files within a directory:
rm src/assets/*Or simply remove a directory and everything it contains:
rm src/assetsAnd when you want to destroy an entire directory tree, sub directories and all it’s files, you can add the -r (recursive) and -f (force) flags — usually combined as -rf. Force is used here to ignore warning which are shown for certain special files.
This is particularly useful when dealing with node_modules.
rm -rf node_modulesPoof! All gone. Forever.
I repeat, take caution when using rm!