Tag: оболочки

В чем разница между «cat file» ./binary "и" ./binary <файл "?

У меня есть двоичный файл (который я не могу изменить), и я могу сделать: ./binary < file Я также могу: ./binary << EOF > "line 1 of file" > "line 2 of file" … > "last line of file" > EOF Но cat file | ./binary дает мне ошибку. Я не знаю, почему это не […]

Как передать параметры псевдониму?

Для сценария bash я могу использовать "$@" для доступа к аргументам. Что эквивалентно, когда я использую псевдоним?

Псевдонимы против функций и скриптов

Этот сайт говорит: «Функции оболочки быстрее [чем псевдонимы]. Псевдонимы просматриваются после функций, и, следовательно, разрешение выполняется медленнее. Хотя псевдонимы легче понять, функции оболочки предпочтительнее псевдонимов практически для всех целей». Учитывая, что (правда или нет), как функции оболочки сравниваются с автономными сценариями оболочки? Есть ли у кого-то особые преимущества по сравнению с другими или лучше подходит […]

Почему слово «оболочка» использовалось для описания интерфейса командной строки?

Мне интересен термин «оболочка». Я думаю, что знаю, что это (хотя различие между «оболочкой» и «терминалом» все еще нечеткое), но почему слово «оболочка» выбрало для описания этого типа программы? Это может показаться несущественным, но обычно, когда выбор слов меня озадачивает, он указывает на пробел в моем понимании.

+/- после выполнения задания в фоновом режиме

Запуск задания в фоновом режиме $ command & Когда это будет сделано, терминал распечатает [n]+ command или [n]- command Поэтому иногда это плюс, а иногда это минус, следующий за [n] . Что означает плюс / минус?

Могу ли я ограничить использование пользователем специальных программ?

Можно ли добавить пользователя и ограничить его запуском специальных программ? Например, после того, как этот пользователь войдет в систему, он может открыть Firefox только для использования Интернета, и никакие другие программы не могут запускаться этим пользователем. Например, в терминале команды не будут доступны, если вы удалите некоторые переменные среды, такие как $ HOME. Но возможно […]

Очистить старые строки приглашения в bash для сохранения пространства прокрутки

Моя терминальная тема раньше была такой, Но я думал, что подсказка потратила столько места. И позже у меня появилась идея, что я могу очищать подсказку каждый раз, когда я запускаю команду. Я использовал bash, одним из решений является использование функции preexec_invoke_exec . Я использую следующую команду для очистки последних символов приглашения: echo -ne "\033[1A\033[K\033[1A\033[K\033[31;1m$ \033[0m" […]

Как оболочка выполняет программу?

Если я скомпилирую программу с помощью gcc и попытаюсь выполнить ее из оболочки bash, какова точная последовательность шагов, за которыми следует bash для ее выполнения? Я знаю, fork() , execve() , loader , dynamic linker (и другие вещи), но может ли кто-то дать точную последовательность шагов и некоторую подходящую ссылку для чтения? Редактировать: Из ответов, […]

изменить цвет подсказки в зависимости от пользователя или root в zsh

в zsh у вас может быть %# в вашей PS1 (или любой переменной PROMPT ), которая в основном означает отображение % если пользователь или дисплей # если root. Мне интересно, есть ли способ повлиять на это, чтобы % или # менял цвета в зависимости от того, является ли он пользователем или root (красный для root, […]

Есть ли способ, чтобы функция в моем сценарии bash автоматически запускалась при любой ошибке команды?

Я пишу сценарий оболочки, который должен выполнять кучу команд, и каждая команда зависит от каждой предыдущей команды. Если какая-либо команда выходит из строя, весь сценарий должен завершиться неудачно, и я вызываю функцию выхода. Я могу проверить код выхода каждой команды, но мне интересно, есть ли режим, который я могу включить, или способ получить bash для […]

Linux и Unix - лучшая ОС в мире.