Tried to rm -r my .cache but accidentally did .config instead...
Tried to rm -r my .cache but accidentally did .config instead...
I'm a complete moron, I should've had that backed up and used trash...
I had to learn the hard way lol
Tried to rm -r my .cache but accidentally did .config instead...
I'm a complete moron, I should've had that backed up and used trash...
I had to learn the hard way lol
I should’ve […] used trash
For those who don’t know: trash-cli
It upsets me to no end that this isn't a standard package 😭
What an awesome tool that I wish I knew sooner. Also the && operator in sh. I think you can figure out what happened.
I’m a complete moron,
You are not,
Every person learning with the hardway isnt a moron,
You have to do, to really learn,
If you do it again though...
🫢 🤷♀️ I would say, that depend the personnal situation,
But i think, OP learned :)
Here's a rule I learned the hard way a few decades ago:
I'm a big fan of starting the command with a #
, then removing it once I'm happy with the command to defend against accidentally hitting enter
Putting ~
next to the enter key on keyboards (at least UK ones) was an evil villain level decision
I really like this # idea. I've also taken to holding off on adding sudo when deleting privileged files
I never thought of doing that in 40 years. It's a great idea actually. Thanks!
Or have backups (lol)
-i
doesn't exist?
Also, triple-check which machine you're actually logged into.
if your session is still running you can use env
to help reconstruct it
I once had a directory in /tmp
called etc
which contained subdirectories for something I was migrating.
I thought that I was in /tmp
when I ran rm -rf etc
... I was actually in /
That's why I always:
Type a space before rm to prevent it from being added to your history to be a extra careful.
rm -r *
Also, if you have to type that, don't use the numpad: / is only one key away from *. If you finger snags the / key on its way to * and you happen to be root, your root partition will go bye-bye.
ZFS and dotfiles are your friend. Sorry for your loss.
You're just the latest member of a long and storied fraternity of the best worst operating system architecture.
https://web.mit.edu/~simsong/www/ugh.pdf
One of us...
Tipps to prevent future accidents:
Mistakes are unpreventable due to our error-prone brains, but it is a choice to repeat them.
Just remember that Nextcloud and git are unencrypted
you can setup encrypted Nextcloud
Sorry for your loss. I did something similar recently. A script was creating a "~" folder in my notes folder. I wanted to delete it... Thankfully it stopped at some file it couldn't remove and my dotfiles are in git.
A tip, to delete files that have names similar to variables or other expandables, put the filename in between single ticks like this 'filename'. Single ticks prevent expansion.
Thanks for the tip!
I should’ve had that backed up
Absolutely! IT's time to check out Stow now. With this you can easily manage your configuration and dotfiles (and all other data) in a single location.
https://venthur.de/2021-12-19-managing-dotfiles-with-stow.html
I've started adopting the habit of putting "-rf" as the last argument to avoid accidentally deleting something before I've double-checked my input. Good luck, and may this never happen again.
I do exactly the same. It's not foolproof but it's better than nothing.
I remember, almost a decade ago, when I discovered that rm
on mac didn't accept flags as last arguments... I hope they changed that behavior
I should have had backups of important files in my home directory
Lessons learned the hard way
Reason's I never use auto-complete in the terminal. Sadly, that's sometimes not enough.
just be careful and review what tab-suggest shows.
Reasons to have backups more like. No need to make life hard
Can you say why were you trying to rm -r your .cache anyway? Also RIP.
Save space probably
Yeah my system was running out of space and I wanted to free a bit quickly. Turns out the issue was Rust building 20GB of binaries and I should have deleted those instead.
Probably the number one cause of borked Linux systems - trying to "de-bloat".
But... why?
I was in a rush to free up space. Rust's binary sized can be really huge and they were taking up like 20GB at the time, but I was unaware of this.
womp womp
thats the sort of command you need to make an alias for
Ow.
i have rm
aliased to rm -i
, it's basically the closest to PowerShell's -WhatIf
that a posix shell gets
Use nix home-manager or guix home and put your configs in a git repo (this is my guix home config for reference)
That's very helpful now. You have added nothing other than to pull the declarative distro equivalent of "I use Arch, BTW" And then link your literal code. For shame. For shame.
nix/guix can be used on any distro and it provides a way to organize .config files so that if the .config directory gets deleted or accidentally modified for some reason, restoring it would be very easy. By putting the configuration in a git repo, it also makes it easy to restore previous configurations. I accidentally deleted a bunch of stuff in my .config directory once and that's one of the reason I use this tooling now, so I thought OP would find it helpful also