Bash Delete Method

I recently permanently delete some files because of habit using, rm -fr ./file.txt, ops.  So I looked into creating a bash function to delete files and just move them into a system temporary folder for auto delayed deletion.

There are multiply system temporary location on a mac,

/tmp – Used for short temp files.  This directory is available on system startup.  Some system are setup to use this directory in memory storage only.

/var/temp – Used for bigger files.  Because this is in the VAR directory it needs to be mounted and thus not available until then(after startup).

$TMPDIR – Is a temp directory variable, this is the recommended location to store temp files on OSX.

These directories are cleaned up differently on different systems.

Below is the line I added to my ~/.bash_profile
del() { mv $1 $TMPDIR; };

This will add a function called del that will move a file into the $TMPDIR.  This will allow the file to be queried for deletion, but also allows for a short recovery time.

View my sample .bash_profile:


Comments are closed.