Склонная сила - добирается для запроса да/нет

Попробуйте это:

sqlite3 sqldb "select caption from notes_fts where notes_fts MATCH 'perl install';"
11
13.04.2017, 15:37
3 ответа

Просто с текущей реализацией apt-get этого сделать нельзя, нужно открыть запрос на возможность и обратиться к мейнтейнеру. Текущее поведение apt-get заключается в том, что когда список пакетов, которые вы неявно объявили установленными, равен количеству пакетов, которые будут установлены, и никакие другие пакеты не будут затронуты обновлениями или перерывами, apt-get предполагает, что пользователь уже уверен в том, что будет сделано , если вы не уверены или хотите проанализировать, что будет сделано без установки пакета, вы можете использовать Costas recommendation из -s, --simulate, --just-print, --dry-run, --recon, --no-act.

Есть и другие утилиты, такие как apt-listbugs, которые проанализируют версии устанавливаемых пакетов до того, как вы их установите (в данном случае на предмет ошибок) и предупредят вас.

10
27.01.2020, 19:58

Команда принимает да на всякий случай установки один пакет (который инициировал из командной строки), И все зависимости в система уже т.е. ничто для установки кроме одного спрошенного пакета.

В другом слове, "если ничто для наблюдения (никакие дополнительные пакеты) затем подсказки (ничто для просьбы)".

Для тестирования можно использовать ключ , с, - моделируют, - справедливая печать, - пробный прогон, - передовод "против", - без действий

4
27.01.2020, 19:58

Старый вопрос, я вижу, но сейчас в похожей ситуации. Обычно я использую sudo aptitude install -P PACKAGE_NAME, что всегда спрашиваю перед установкой. Однако теперь в Debian менеджер пакетов по умолчанию apt|apt-getи он не имеет этой функциональности. Конечно, я все еще могу установить aptitudeи использовать его... Однако я написал небольшую функцию-оболочку sh/bash/скрипт для apt-get, чтобы спросить перед установкой. Он действительно сырой, и я написал его как функцию в своем терминале.

$ f () { sudo apt-get --simulate install "$@" | grep -v '^Inst\|^Conf'; read -p 'Do You want to continue (y/N): ' ans; case $ans in [yY] | [yY][eE][sS]) sudo apt-get -y install "$@";; *);; esac; }

Теперь давайте уточним:

f () {
  # Do filtered simulation - without lines contains 'Inst' and 'Conf'
  sudo apt-get --simulate install "$@" | grep -v '^Inst\|^Conf';

  # Interact with user - If You want to proceed and install package(s),
  # simply put 'y' or any other combination of 'yes' answer and tap ENTER.
  # Otherwise the answer will be always not to proceed.
  read -p 'Do You want to continue (y/N): ' ans;
  case $ans in
    [yY] | [yY][eE][sS])
      # Because we said 'yes' I put -y to proceed with installation
      # without additional question 'yes/no' from apt-get 
      sudo apt-get -y install "$@";
    ;;
    *)
      # For any other answer, we just do nothing. That means we do not install
      # listed packages.
    ;;
  esac
}

Чтобы использовать эту функцию как сценарий sh/bash, просто создайте файл сценария, например. my_apt-get.shс содержимым (Примечание :листинг не содержит комментариев,сделать его немного короче;-)):

#!/bin/sh

f () {
  sudo apt-get --simulate install "$@" | grep -v '^Inst\|^Conf';
  read -p 'Do You want to continue (y/N): ' ans;
  case $ans in
    [yY] | [yY][eE][sS])
      sudo apt-get -y install "$@";
    ;;
    *)

    ;;
  esac
}

f "$@"

Затем поместите его, например, для. в ~/bin/и сделайте его исполняемым с помощью $ chmod u+x ~/bin/my_apt-get.sh. Если каталог ~/binвключен в вашу переменную PATH, вы сможете выполнить ее просто с помощью:

$ my_apt-get.sh PACKAGE_NAME(S)_TO INSTALL

Обратите внимание:

  • Код действительно использует sudo. Если вы используете учетную запись root, вам, вероятно, потребуется настроить ее.
  • Код не поддерживает автодополнение оболочки
  • Понятия не имею, как код работает с шаблонами оболочки (например. "!", "*", "?",...)
0
27.01.2020, 19:58

Теги

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