Баш срещу Даш
Съдържание
Dash е черупка, която има слаба използваемост по съвременните стандарти, когато се използва като интерактивна обвивка за влизане, но е по-бърза при изпълнение на POSIX-съвместими скриптове, отколкото Bash.Bash има много повече функции и е особено за предпочитане, когато се използва интерактивно (въпреки че съдържа повече функции за програмиране също). Bash обикновено се предоставя като интерактивна обвивка по подразбиране, докато Debian и Debian-производни като Ubuntu предоставят Dash като / bin / sh реализация, като по този начин причинява скриптове с #! / Bin / sh shebangs да бъдат интерпретирани от Dash, а не Bash по подразбиране. За скриптове, които изискват Bash за изпълнение, Bash ще бъде използван като интерпретатор, ако shebang е #! / Bin / bash. Стартират голям брой екземпляри на черупките като част от процеса на зареждане на Ubuntu. Вместо да променя всеки от тях поотделно, за да работи изрично под / bin / тире, промяна, която би изисквала значителна текуща поддръжка и която би могла да се регресира, ако не бъде обърнато внимателно, основният екип за разработка на Ubuntu смята, че е най-добре просто да промени черупка по подразбиране
Съдържание: Разлика между Bash и Dash
- Какво е Bash?
- Какво е Dash?
- Ключови разлики
- Видео обяснение
Какво е Bash?
Bash е черупка на Bourne-Again. Bash е отлична пълнофункционална черупка, подходяща за интерактивна употреба; наистина, това все още е обвивката за вход по подразбиране. Bash е предназначен за хора и осигурява набор от POSIX функционалност.
Какво е Dash?
Dash е Debian Almquist Shell. Dash внедрява Single Unix Spec, тогава не е необходимо да прави повече, за да отговаря на тази формална спецификация. Dash е за неинтерактивно изпълнение на скрипт. Dash поддържа само съвместими с POSIX функции.
Ключови разлики
- Bash е отлична пълнофункционална черупка, подходяща за интерактивна употреба; наистина, това все още е обвивката за вход по подразбиране. Въпреки това е доста голям и бавен за стартиране и работа в сравнение с тире.
- Dash внедрява Single Unix Spec, тогава не е необходимо да прави повече, за да отговаря на тази формална спецификация. Но някои от „башизмите“ са удобни, биха добавили малко към размера на тире и биха улеснили използването на тире като алтернатива.
- Много скриптове на черупките, които съдържат командния набор –k, не се поддържат от тире, но се поддържат от bash.
- Bash Поддържа същите скриптови команди като Dash, както и собствените си допълнителни команди, Dash Only поддържа POSIX съвместими функции.
- Bash е предназначен за хора и осигурява набор от POSIX функционалност, Dash е за неинтерактивно изпълнение на скриптове.
- Bash поддържа завършване на раздели и поддържа история на командите.
- Dash е само 100K в сравнение с 900K на Bash
- Dash е за по-бързо стартиране и изпълнение на скрипт в сравнение с Bash.