this post was submitted on 13 Jun 2024
53 points (86.3% liked)
Linux
48287 readers
613 users here now
From Wikipedia, the free encyclopedia
Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).
Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.
Rules
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
So.... you're afraid of the command that does the thing you're trying to do?
More like, I'm afraid of the command doing more than I'm trying to do.
What I want to do is ignore prompts about write-protected files in the
.git
directory, what it does is ignore all prompts for all files.You just need to do this then
With
rm
-r is for (R)ecursion and -f is for F(force) disabled the prompting. So, use -f on the .git directory which has the files you want to obliterate, and leave it off for the safety prompts.so why not
rm -rf folder/.git/*
thenrm -r folder/*
Maybe they're afraid of accidentally writing
rm -rf folder/.git /*
or somethingThat's a good example. If I'm regularly running a command that is a single whitespace character away from disaster, that's a problem.
Imagine a fighter aircraft that had an eject button on the side of the flight stick. The pilot complains "I'm afraid I might accidentally hit the eject button when I don't need to", but everyone responds "why would you push the eject button if you don't want to eject?", or "so your concern is that the eject button will cause you to eject...?" -- That's how I feel right now.
I understand the mindset you have, but trust me, you'll learn (sooner or later) a habit to pause and check your command before hitting enter. For some it takes a bit longer and it'll bite you in the butt for few times (so have backups), but everyone has gone down that path and everyone has fixed their mistakes now and then. If you want hard (and fast) way to learn to confirm your commands, use dd a lot ;)
One way to make it a bit less scary is to 'mv /tmp' and when you confirmed that nothing extra got removed you can 'cd /tmp; rm -rf ', but that still includes the 'rm -rf' part.
How about writing a script to automate the deletion, thus minimizing the chance of human error being a factor? It could include checks like "Is this a folder with .git contents? Am I being invoked from /home/username/my_dev_workspace?"
In a real aviation design scenario, they want to minimize the bullshit tasks that take up cognitive load on a pilot so they can focus on actually flying. Your ejector seat example would probably be replaced with an automatic ejection system that's managed by the flight computer.
Are you regularly deleting git repos?
Generally that is not a concern because regular users won't be able to
rm
anything else other than those in his own $HOME.Another thing I want to say is, command line is for careful users. If someone is careless, they should create a wrapper around
rm
, or just use a FM.I think that's the situation OP is in.. They don't trust themself with these kinds of commands, while other commenters here are trying to convince them that they should just use rm -rf anyway
What about adding the flags last?