Зависит ли само ядро ​​от стандартных библиотек C

Возможно, вы найдете что-то, что можно использовать в функции READLINE.

Смотрите LESS='+/shell-expand-line' man bash для начала.

shell-expand-line может быть не лучшим вариантом для ваших целей, но он установлен по умолчанию (при условии, что у вас есть опции оболочки по умолчанию, т.е. echo $SHELLOPTS содержит :emacs:).

Некоторые другие возможности можно увидеть, выполнив bind -p | grep expand. Любая из этих функций "expand" сделает то, о чем вы просите.

В основном вы зададите псевдоним:

alias cdd='cd /your/home/folder/Downloads/'

... в вашем .bashrc, и когда вы захотите расширить его, вы напечатаете cdd, и он будет расширен. Это использование уже установленного shell-expand-line, как упоминалось выше - он расширяет псевдонимы и расширение истории, а также переменные. (Попробуйте набрать l.; echo $SHELLOPTS; !!! и нажмите .)

Вы можете связать другие функции, такие как просто alias-expand-line, которые могут лучше служить вашим целям.

3
06.06.2019, 19:16
1 ответ

Нет, ядро ​​не зависит от стандартной библиотеки C (или какой-либо другой библиотеки ), оно является самодостаточным -. Пользовательские -космические программы также не обязательно зависят от библиотеки C. Библиотека C предоставляет удобные оболочки для системных вызовов, но их можно вызывать напрямую, минуя библиотеку C, а среды выполнения других языков могут предоставлять свои собственные оболочки.

(Это означает, что ядро ​​содержит реализацию довольно многих функций, которые обычно можно ожидать от библиотеки C, иногда в упрощенных версиях, более подходящих для ядра. Подробности см. в этом FAQ для новичков по ядру .)

6
27.01.2020, 21:17

Теги

Похожие вопросы