Как эффективно переместиться по Терминальным и установленным пакетам/командам?

Я - электрический и инженер по вычислительной технике, который недавно начал использовать Ubuntu 16.04 для изменения Компьютера на модуле (COM) на базе Android для удовлетворения потребностям нового продукта, я продолжаю работать для компании, на которую я работаю.

Естественно, разработка Android на уровне, я продолжаю работать (HAL, ядро, и т.д.... не так 'приложения' в этой точке), кажется, не является соответствующей на платформе, я являюсь самым довольным (Windows), таким образом, это сделало большую часть количества смысла переместиться в Ubuntu, очень много поддерживаемой платформы с точки зрения разработки Android.

Теперь к более соответствующей части.

У меня нет проблемы с помощью Ubuntu (установка, и конфигурация была бризом), и знают об интерфейсах командной строки не понаслышке как Терминал, который я очень предпочитаю использовать и "осваивать".

Однако мое самое большое препятствие в "освоении" терминала не является синтаксисом или даже самими различными двоичными файлами/пакетами, но находящий те двоичные файлы/пакеты!

Я использовал человека и информацию экстенсивно, но те команды только помогают, если Вы знаете команду/функцию, Вы ищете заранее, и даже при том, что ищущие способности и человека и информации являются большими, я все еще чувствую, что испытываю недостаток в индексе того, что доступно мне.

Суммировать и ясно перечислить мои вопросы:

  1. Существует ли "список" всего, что я могу зайти в терминал, который является динамичным и адаптируется к текущему набору пакетов/двоичных файлов/функций, в настоящее время устанавливаемых?

  2. Где точно различными являются установленные сохраненные пакеты? Я посмотрел в / мусорном ведре/, но это, кажется, только часть того, что доступно мне./bin/, кажется, имеет много базовых двоичных файлов, но другие на вид базовые двоичные файлы как информация и whatis, кажется, отсутствуют. Аналогично, ни один из моих установленных пакетов, полученных через Кв., ни склонных саму, не присутствует.

  3. Дополнительный Кредит, Какие мыслительные процессы должны отличаться в среде Linux в противоположность среде Windows? Как, где там переменная среды пути, указывающая, где система будет искать двоичные файлы? Есть ли эквивалент "Программные файлы", или, "Добавьте и Удалите Программы" (только для перечисления, что установлено!)? Какие-либо другие "проподсказки" для сведущего парня/разработчика Windows, но совершенно незнакомого человека для Linux?

Это - мое первое сообщение на любом веб-сайте Exchange Стека, поэтому простите мне, если я нарушил какие-либо правила или принял этикет. Я прочитал инструкции, и не думайте, что я нарушаю любого из них! В любом случае любая справка значительно ценилась бы!

Спасибо.

7
задан 8 July 2016 в 07:44

2 ответа

Существует ли "список" всего, что я могу зайти в терминал, который является динамичным и адаптируется к текущему набору пакетов/двоичных файлов/функций, в настоящее время устанавливаемых?

Да! Если Вы используете bash как Ваша оболочка (который я принимаю, поскольку это - стандартная оболочка) можно нажать TAB дважды, который даст Вам полный список команд, которые можно выполнить (остерегайтесь этого, это может быть довольно длинно).

Править: Я узнал, что нажимающая вкладка дважды без любых символов только работает, когда удар использует свою конфигурацию по умолчанию - не одна Ubuntu. Таким образом, можно хотеть работать bash --norc. Нажатие TAB дважды должен работать затем.

Другая альтернатива была бы установкой и настройкой zsh или fish которые являются хорошими заменами для удара и предлагают больше функциональности. (Я предпочитаю рыбу, потому что она обеспечивает хорошее автозавершение, когда Вы вводите.)

Где точно различными являются установленные сохраненные пакеты? Я посмотрел в / мусорном ведре/, но это, кажется, только часть того, что доступно мне./bin/, кажется, имеет много базовых двоичных файлов, но другие на вид базовые двоичные файлы как информация и whatis, кажется, отсутствуют. Аналогично, ни один из моих установленных пакетов, полученных через Кв., ни склонных саму, не присутствует.

Вы видите, где Ваша оболочка ищет установленные программы:

$ echo $PATH
/home/niklas/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/niklas/.gopath/bin:/home/niklas/.gopath/bin

(Обратите внимание, что это может выглядеть немного отличающимся для Вас.)

Сегодня, большинство исполняемых файлов расположено в /usr/bin согласно FHS.

Если Вы хотите знать, где одна конкретная программа расположена, использовать which:

$ which apt
/usr/bin/apt

Поскольку у меня нет большого опыта Windows, я не думаю, что могу ответить на последнюю часть вопроса, но:

  • $PATH "переменная среды пути, указывающая, где система будет искать двоичные файлы".
  • Большинство программ установлено на /usr. (Это разделяется на исполняемые файлы (/usr/bin), библиотеки (/usr/lib), и совместно используемые файлы (/usr/share). Документация находится в /usr/share/doc.)
2
ответ дан 23 November 2019 в 06:47

Для списка всех функций можно использовать compgen -A function, но набор их является функциями автоматического заполнения, которые программы используют внутренне, и пользователь никогда не использовал бы. Они все запускают с подчеркивания, так чтобы проигнорировать их, сделать:

compgen -A function | grep -v "^_"

Для наблюдения определения функции используйте type $function_name. type может также сказать Вам, где данный двоичный файл/сценарий хранится, и является ли команда двоичным файлом, сценарием, псевдонимом, функцией, и т.д.

Также полезный: type -a покажет, существует ли команда в различных местах или в различных формах. Например, выполненный type -a [ и Вы получите это:

[ is a shell builtin
[ is /usr/bin/[
2
ответ дан 23 November 2019 в 06:47

Другие вопросы по тегам:

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