Am 06. Oct, 2010 schwätzte Dazed_75 so: moin moin, > Oh, BTW I read last week that ubuntu still uses bash for user shells, but > uses dash as a lighter, faster shell for "system stuff". I am not sure what > that means other than /bin/sh links to /bin/dash because if I open a > terminal and look at my env, it shows SHELL=/bin/bash. Yes, system scripts such as those in /etc/init.d/ should use a true POSIX shell. Bash emulates POSIX, but imperfectly and apparently it's large compared to a POSIX shell. As I understand it, dash is intended to be a leaner, meaner, more POSIX compliant shell. For that reason, /bin/sh should now point at /bin/dash. Poining /bin/sh to /bin/bash led to scripts that relied upon bashisms that aren't in POSIX. That bit debian, a group that knows better :). User shells should still generally be bash or zsh as they provide extra capabilities useful to humans. I also use bash for my internal programming, but would strongly consider POSIX compliant for system scripts being released to others. > The only other aspect I am aware of is if you run a script that opens with > #!/bin/sh, you will be running dash, not bash. Yes, the shbang line tells the system which shell to run for the script. Putting /bin/sh on it will open whatever shell /bin/sh points out, /bin/bash will get you bash, /usr/bin/php will get you php, /usr/bin/perl will get you perl, etc. Whatever's called needs to be installed at that location. ciao, der.hans -- # http://www.LuftHans.com/ http://www.LuftHans.com/Classes/ # Fairy Tale, n.: A horror story to prepare children for the newspapers.