Цей потік і його прийнята відповідь, зокрема, стосуються використання Python для сценаріїв оболонок , а не як інтерактивної оболонки.
Щоб писати сценарії іншою мовою, поставте, наприклад, #!/usr/bin/env pythonзамість #!/bin/bashверхньої частини сценарію.
Якщо ви хочете спробувати іншу інтерактивну оболонку, просто запустіть її, наприклад, введіть ipythonу вашому наявному рядку оболонки. Якщо ви вирішили прийняти цю оболонку, встановіть SHELLзмінну середовища на початку сеансу ( ~/.profileу більшості середовищ або в ~/.pam_environment), наприклад export SHELL=/usr/bin/ipython( .profileсинтаксис) або SHELL="/usr/bin/ipython"(.pam_environment синтаксис).
Жодна з оболонок, які я бачив на основі передових мов, таких як Perl чи Python, на мій погляд, недостатньо хороша для інтерактивного використання. Вони занадто багатослівні для загальних завдань, особливо спільної роботи оболонки, яка полягає у запуску програми. Я писав про подібну тему 4 роки тому ; Я не думаю, що ситуація кардинально покращилася відтоді.