undo rm -rf *
Bill Oliver
vendor at billoblog.com
Tue Mar 26 17:38:06 UTC 2013
I'm not a fan of trash directories. They give you a second chance, but
you may end up not really deleting things you wanted to delete. What
about a simple script something like this? This is off the top of my
head and not tested (so certainly has a bug or two), but it seems that
you could check with something like this:
#!/bin/sh
echo "check?"
read ANS
if [ $ANS = "y" ]
then
ls -laR $1 | more
echo "continue?"
read ANS2
if [ $ANS2 = "y" ]
then
rm -fr $1
fi
else
rm -fr $1
fi
Of course there are two problems with big deletions. If you use more, it would get boring hitting the space bar a zillion times, and if you don't, then you won't see the files...
billo
On Wed, 27 Mar 2013, Celik wrote:
>
>
> On Wed, Mar 27, 2013 at 1:14 AM, Bruno Wolff III <bruno at wolff.to> wrote:
> On Tue, Mar 26, 2013 at 22:23:29 +1100,
> Celik <celik.n.00 at gmail.com> wrote:
> Hi,
>
> Had a logic error in my bash script and did "rm -rf *" on my current
> working directory. Any tips for undoing such an error?
>
>
> I've done worse. I once did rm -rf .* to try to remove some config files in a home directory. I forgot that .*
> matched .. and deleted a lot of stuff I didn't want to.
>
>
> Bruno, after such an experience, did you come up with an alternative solution to using "rm -rf"?
> "rm -i" is good as it prompts before deletion however it becomes tedious if there are a lot of files to be deleted,
> hence "rm -rf" seems ideal but dangerous if not cautious :(
> Had a look on google, there was one particular recommendation that caught me attention (sorry I don't have the link). It
> was recommended to mv the files (and/or folders) to be deleted into a tmp directory. I'm planning to try that in my
> future code, we'll see how things go.
>
> Regards,
> C
>
>
More information about the users
mailing list