|
| ▲ | Darfk 11 hours ago | parent | next [-] |
| Totally agree it shouldn't be for basic tools; but if I'm ever developing a script that performs any kind of logic before reaching out to a DB or vendor API and modifies 100k user records, creating a flag to just verify the sanity of the logic is a necessity. |
| |
| ▲ | Joker_vD 11 hours ago | parent | next [-] | | if [ -n "$DRY_RUN" ] ; then
alias rm='echo rm'
alias cp='echo cp'
fi
Of course, output redirects will still overwrite the files, since the shell does it and IIRC this behaviour can't be changed. | | | |
| ▲ | james_marks 11 hours ago | parent | prev [-] | | Yep. First thing I do for this kind thing is make a preview=true flag so I don’t accidentally run destructive actions. |
|
|
| ▲ | digiown 11 hours ago | parent | prev | next [-] |
| For most of these local data manipulation type of commands, I'd rather just have them behave dangerously, and rely on filesystems snapshots to rollback when needed. With modern filesystems like zfs or btrfs, you can take a full snapshot every minute and keep it for a while to negate the damage done by almost all of these scripts. They double as a backup solution too. |
|
| ▲ | ronjakoi 8 hours ago | parent | prev | next [-] |
| I used to have alias rm='rm -i' for a few years to be careful, but I took it out once I realised that I had just begun adding -f all the time |
| |
| ▲ | wonger_ 2 hours ago | parent [-] | | See also rm -I (capital i), which only prompts when deleting directories or >3 files |
|
|
| ▲ | hdjrudni 11 hours ago | parent | prev [-] |
| Even in those basic examples, it probably would be useful. `cp` to a blank file? No problem. `cp` over an existing file? Yeah, I want to be warned. `rm` a single file? Fine. `rm /`? Maybe block that one. |
| |
| ▲ | Izkata 7 hours ago | parent [-] | | That last one would error without doing anything anyway because it's not recursive. |
|