6 ms·
Advanced Bash-Scripting Guide
- freedomben 2y agoReally great resource. If you want more of a book format, I also highly recommend The Linux Command Line by William Shotts: https://linuxcommand.org/tlcl.php https://linuxcommand.org/tlcl.php
- mmh0000 2y agoThere are many foot-guns to be found in bash scripting. I highly recommend the Wooledge wiki for any and all bash knowledge, it points every place you can go wrong, especially when using advanced features. https://mywiki.wooledge.org/FullBashGuide https://mywiki.wooledge.org/FullBashGuide http://mywiki.wooledge.org/BashFAQ http://mywiki.wooledge.org/BashFAQ
- mcc1ane 2y agoComplementary - https://github.com/anordal/shellharden/blob/master/how_to_do_things_safely_in_bash.md https://github.com/anordal/shellharden/blob/master/how_to_do...
- systems 2y agolast update 2014 that being said, it think 10 years later, linux should pick a data oriented shell (powershell or nushell) and go full in on it on windows, almost all services have some Powershell support i understand that on linux, command line support is always there, so unlike windows adding command line support is not really news, but still i think the move to a data oriented shell, is better
- ttyprintk 2y agoOn Windows, mv s:\src d:\dest Works as you expect. Now on some unimportant directory try: mv s:\src I have to think hard about an equivalently-stressful typo on another interactive shell.
- ttyprintk 2y agoI suppose in POSIX: sudo ifdown ens1 ; ifup ens1 But this one is easier to understand.
- ykonstant 2y agoI think POSIX mv is terrifying enough. I've found it to be much more dangerous than dd or rm.
- systems 2y agowell this is a critic of this one command, but how is it a critic of data oriented shells?
- ttyprintk 2y agoI'm probably just cranky. Moving files is a universal use-case, i.e. xargs predates Bourne. Maybe PowerShell hasn't arrived at the amount of reliability testing we expect from a data utility. If I saw it being used as such, I would ask for many assertions for both data manipulation and filesystem traversal.
- systems 2y agofor the record mv C:/folder will only delete if folder is empty
- deleted 2y ago[deleted]
- TacticalCoder 2y agoMandatory comment every time the subject comes up: shellcheck is really helpful when writing Bash scripts. shellcheck itself is not written in Bash (it's written in Haskell) but it gives really good hints and find lots of bugs. If you disagree with some of its warnings, you can choose which ones you want to turn off. I use it from within Emacs and it works fine. Set that thing once, years ago, and it's been helping me ever since. Also: shellcheck probably ships with your Linux distro.
- Grimeton 2y agoThere are so many things that can go wrong when scripting in the shell. If you don't sit down and play with it, trying to understand what's going on, then no guide will save you. : "${foo:=bar}"
- KolenCh 2y agoI used to read this cover to cover when I first learnt bash. But I later found that its advice can be subpar from time to time. There are better resources in learning bash.
- wakaru44 2y agoAnd those are?
- KolenCh 2y agoSorry, not going to go into details here. But I think the statement is not controversial. There’s probably well written criticism on it somewhere. But then it wasn’t a bad starting point. I don’t have a better book to recommend. There are wikis with better info. But not in the form of a book which is also free I think.