$ mkdir /tmp/b
below cmd output started 2017 Sat Oct 28 01:31:25 PM PDT
above cmd output done    2017 Sat Oct 28 01:31:25 PM PDT
dstromberg@zareason2:~ x86_64-unknown-linux-gnu 31848

$ cd /tmp/b
below cmd output started 2017 Sat Oct 28 01:31:27 PM PDT
above cmd output done    2017 Sat Oct 28 01:31:27 PM PDT
dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848

$ # You can get bash from https://ftp.gnu.org/gnu/bash/
above cmd output done    2017 Sat Oct 28 01:31:33 PM PDT
dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848

$ wget https://ftp.gnu.org/gnu/bash/bash-4.4.12.tar.gz
below cmd output started 2017 Sat Oct 28 01:31:35 PM PDT
--2017-10-28 13:31:35--  https://ftp.gnu.org/gnu/bash/bash-4.4.12.tar.gz
Resolving ftp.gnu.org (ftp.gnu.org)... 2001:4830:134:3::b, 208.118.235.20
Connecting to ftp.gnu.org (ftp.gnu.org)|2001:4830:134:3::b|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 9463431 (9.0M) [application/x-gzip]
Saving to: 'bash-4.4.12.tar.gz'

bash-4.4.12.tar.gz             100%[====================================================>]   9.02M  5.36MB/s    in 1.7s

2017-10-28 13:31:38 (5.36 MB/s) - 'bash-4.4.12.tar.gz' saved [9463431/9463431]

above cmd output done    2017 Sat Oct 28 01:31:38 PM PDT
dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848

$ tar xfp bash-4.4.12.tar.gz
below cmd output started 2017 Sat Oct 28 01:31:43 PM PDT
above cmd output done    2017 Sat Oct 28 01:31:44 PM PDT
dstromberg@zareason2:/tmp/b x86_64-unknown-linux-gnu 31848

$ cd bash-4.4.12 && ./configure > configure.output 2>&1 && make > make.output 2>&1
below cmd output started 2017 Sat Oct 28 01:32:09 PM PDT
above cmd output done    2017 Sat Oct 28 01:33:31 PM PDT
dstromberg@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 31848

$ sudo
below cmd output started 2017 Sat Oct 28 01:33:54 PM PDT
[sudo] password for dstromberg:
above cmd output done    2017 Sat Oct 28 01:33:59 PM PDT
root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641

$ make install > make-install.output 2>&1
below cmd output started 2017 Sat Oct 28 01:34:08 PM PDT
above cmd output done    2017 Sat Oct 28 01:34:12 PM PDT
root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641

$ if ! fgrep -x /usr/local/bin/bash /etc/shells; then echo /usr/local/bin/bash >> /etc/shells; fi
below cmd output started 2017 Sat Oct 28 01:35:25 PM PDT
/usr/local/bin/bash
above cmd output done    2017 Sat Oct 28 01:35:25 PM PDT
root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641

$ chsh -s /usr/local/bin/bash
below cmd output started 2017 Sat Oct 28 01:36:21 PM PDT
above cmd output done    2017 Sat Oct 28 01:36:21 PM PDT
root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641

$ # Log out and back in, leaving at least one preexisting shell open - in case there's a problem to fix
above cmd output done    2017 Sat Oct 28 01:36:44 PM PDT
root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641

$ # This shell is still your old one, but when you log in anew, those shells should be (the new) bash.
above cmd output done    2017 Sat Oct 28 01:36:56 PM PDT
root@zareason2:/tmp/b/bash-4.4.12 x86_64-unknown-linux-gnu 8641

$



Back to Dan's tech tidbits