Согласно https://wiki.ubuntu.com/DashAsBinSh :
Оболочка входа по умолчанию остается bash. Открытие терминала из меню или ярлыка [crtl-alt-t] обеспечивает интерактивный bash. Сценарий, запускаемый с рабочего стола или из файлового менеджера через диалог «запуск в терминале», будет выполняться как черта POSIX.
livy@disco-dingo:~$ ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Aug 22 10:53 /bin/sh -> dash
livy@disco-dingo:~$ cat Desktop/test.sh
echo $SHELL > ~/Desktop/test-result.txt;
Я добавил разрешение на выполнение, затем дважды щелкнул файл test.sh
, и вот результат:
livy@disco-dingo:~$ cat Desktop/test-result.txt
/bin/bash
Вики Ubuntu устарели или что-то в этом роде?
Согласно nixCraft: , Как я узнаю то, что окружает, я использую на Linux/Unix?
...
$SHELL
оболочка для текущего пользователя, но не обязательно окружают, который работает при перемещении. [так]
я понятия не имею, как получить в настоящее время рабочую оболочку.   следующее просто дает название сценария:
ps -p $ > ~/Desktop/test-result.txt
, В то время как следующее:
pstree -s $ > ~/Desktop/test-result.txt
имеет следующий вывод на моем компьютере:
systemd---test.sh---pstree
, Чтобы видеть, работает ли dash
вообще, можно попробовать:
pgrep dash > ~/Desktop/test-result.txt
Проверка сначала в интерактивной оболочке, которую это уже не выполняет для предотвращения ложных положительных сторон.   На моем компьютере, даже когда я имею #!/bin/dash
, dash
, кажется, не используется.   Таким образом, это кажется systemd
, может запускать скрипт непосредственно.