Переключение с командной строки Windows на терминал Linux: 7 вещей, которые нужно знать
Оболочки Linux могут показаться похожими на командную строку, но если вы переходите из командной строки Windows, вам предстоит многое узнать о них.
1. Linux имеет несколько оболочек
Одно из отличий от командной строки Windows в Linux заключается в том, что вы можете выбирать между несколькими оболочками. Хотя это было возможно сделать на Windows еще со времен MS-DOS, возможность переключения оболочек в Linux гораздо более заметна.
Хотя Bash является самой популярной оболочкой по умолчанию для дистрибутивов Linux, есть и другие оболочки, которые вы можете использовать, такие как tcsh, zsh и fish, среди прочих. Все они имеют свои особенности. Многие из них могут эмулировать оболочку Bourne для совместимости со сценариями оболочки, необходимыми для административных задач. Вы можете выбрать другую оболочку с помощью команды chsh.
2. Разделители путей бывают разными
Если вы посмотрите на пути в Windows и Linux, вы заметите, что разделители отличаются. В Windows пути разделяются символами "\" (обратная косая черта), в то время как в Linux и других Unix-подобных системах они разделяются символом "/" (прямая косая черта или просто "косая черта"). В основном это связано с историческими причинами.
Если вы привыкли к Windows, это может вас сбить с толку. Команды Linux также чувствительны к регистру, что означает, что строчные и прописные символы имеют разные значения.
3. Активно развиваются оболочки Linux
В то время как Microsoft в значительной степени отказалась от старой командной строки в пользу PowerShell, оболочки Linux все еще активно разрабатываются. Именно по этой причине сегодня вы можете выбирать из стольких оболочек на Linux.
Командная строка — это не какая-то историческая реликвия, а важная часть программного обеспечения, ежедневно используемая опытными пользователями, администраторами и разработчиками. Ошибки выявляются и исправляются, а также постоянно добавляются новые функции.
4. Вы можете запустить PowerShell из Linux и оболочки Linux на Windows
Вам не нужно просто запускать PowerShell в Windows или оболочки Linux в Linux. Вы можете запускать одно из другого.
Корпорация Майкрософт поддерживает версию PowerShell для Linux, и вы можете установить ее в качестве оболочки на большинство основных дистрибутивов Linux. Вы можете установить его с помощью репозиториев пакетов Майкрософт для вашего дистрибутива.
Вы также можете запускать оболочки Linux в Windows. Самый простой способ сделать это — установить подсистему Windows для Linux, а затем установить дистрибутив Linux. Как упоминалось ранее, большинство дистрибутивов используют Bash по умолчанию, но вы можете изменить оболочку на любую, которую захотите.
Вы даже можете установить версию PowerShell для Linux на Windows, если хотите сделать вещи еще более странными. Таким образом, вы можете запустить версию Powershell для Linux в Linux и Windows.
С помощью WSL вы можете изучать Linux из Windows и сочетать их.
5. Оболочки Linux имеют контроль над заданиями
Одна вещь, которая отличает оболочки Linux от командной строки, заключается в том, что они с самого начала были созданы для многозадачности. Результатом этого является то, что в современных оболочках есть функция, называемая управлением заданиями, которая позволяет вам перевести задачу в фоновый режим, пока вы выполняете другие команды.
Вы можете запустить команду в фоновом режиме, добавив к строке в оболочке символ & (амперсанд). Например
some_long_operation &
Оболочка выполнит эту команду в фоновом режиме и вернет номер задания в квадратных скобках. Вы можете использовать это, чтобы сообщить оболочке, что делать с заданием.
Чтобы вывести заднюю часть на передний план, вы можете использовать команду fg. По умолчанию, fg вернет задание, которое вы только что перевели в фоновый режим, но если у вас несколько заданий, вам нужно будет указать номер задания с префиксом % (знак процента). Например, чтобы выполнить задание 1 на переднем плане, введите:
fg %1
Чтобы перевести текущее задание в фоновый режим, нажмите Ctrl+Z, затем введите "bg" в оболочке.
6. В Linux есть как встроенные, так и внешние команды
Команды управления заданиями, которые я вам показал, были встроены в большинство современных оболочек. По этой причине они называются «встроенными». Они должны работать в Bash и zsh.
Причина, по которой разработчики оболочки создают встроенные команды, заключается в том, что их часто выполняется быстрее, чем внешние команды, поскольку оболочка уже находится в памяти и ее не нужно загружать. Некоторые из встроенных команд дублируются в обычных программах Linux, и их легко спутать. Лучший вариант — прочитать документацию вашей оболочки и узнать, какие в ней есть встроенные команды.
Вы также часто можете запустить команду под названием, которая сообщает вам, что это за команда. Например, для bg:
which bg
Оболочка сообщит, что это встроенная команда. В zsh, которая также является встроенной командой:
which which
7. У вас есть выбор скриптовых языков
Если вам когда-либо приходилось автоматизировать что-либо в командной строке, вы могли написать пакетный файл или .bat из расширения файла.
Вы также можете автоматизировать задачи с помощью сценариев оболочки. Оболочки Linux являются мощными и имеют множество полноценных функций программирования, таких как массивы и хеши/ассоциативные массивы. А если вам нужно больше возможностей, вы можете изучить скриптовые языки, такие как Perl или Python. Во время изучения командной строки Linux у вас будет много интересного, независимо от того, какой язык вы используете.