Как я могу получить список всех пакетов в разделе репозитория из командной строки?

Вот как я попытался переключить отображение клавиши ENTER на клавишу SHIFT (и наоборот):

$ uname -a

ОТЧЕТЫ:

Linux box 2.6.32-37-generic #81-Ubuntu SMP Fri Dec 2 20:35:14 UTC 2011 i686 GNU/Linux

$ which xmodmap

ОТЧЕТЫ:

/usr/bin/xmodmap

$ which xev

ОТЧЕТЫ:

/usr/bin/xev

$ xev

(игнорируйте следующие пятьдесят строк или около того)

PRESS THE ENTER KEY (notice the third line):
KeyPress event, serial 33, synthetic NO, window 0x5600001,
    root 0x110, subw 0x0, time 263441120, (738,242), root:(771,314),
    state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
    XLookupString gives 1 bytes: (0d)
    XmbLookupString gives 1 bytes: (0d)
    XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x5600001,
    root 0x110, subw 0x0, time 263441271, (738,242), root:(771,314),
    state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
    XLookupString gives 1 bytes: (0d)
    XFilterEvent returns: False

PRESS THE SHIFT KEY (notice the third line):
KeyPress event, serial 30, synthetic NO, window 0x5600001,
    root 0x110, subw 0x0, time 263592202, (464,368), root:(497,440),
    state 0x0, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
    XLookupString gives 0 bytes:
    XmbLookupString gives 0 bytes:
    XFilterEvent returns: False

KeyRelease event, serial 33, synthetic NO, window 0x5600001,
    root 0x110, subw 0x0, time 263592298, (464,368), root:(497,440),
    state 0x1, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
    XLookupString gives 0 bytes:
    XFilterEvent returns: False

Важно, чтобы третья строка каждого нажатия клавиши :

FOR:
state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
The name "Return" is the name of the behavior of the key pressed.
The number of the key pressed is "36".

state 0x0, keycode 62 (keysym 0xffe2, Shift_R), same_screen YES,
The name "Shift_R" is the name of the behavior of the key pressed.
The number of the key pressed is "62".

ОТМЕНА КАРТЫ:

$ xmodmap -e "keycode 62 = Return"
$ xmodmap -e "keycode 36 = Shift_R"

СОХРАНИТЬ РЕЗУЛЬТАТЫ:

$ xmodmap -pke > ~/.Xmodmap
$ vi ~/.xinitrc

ADD

 xmodmap ~/.Xmodmap

$ sudo reboot

Основная проблема заключалась в том, что разворот НЕ работал. Клавиша ENTER была сопоставлена ​​с ключом SHIFT_R; но клавиша SHIFT не была отображена на клавишу ENTER. Направьте фигуру.

1
задан 13 March 2015 в 14:36

3 ответа

Убедитесь, что установлен пакет dctrl-tools. Он предоставляет полезные команды для поиска списков пакетов apt и dpkg. Чтобы получить полное описание всех пакетов из определенного раздела, которые можно установить с помощью apt, запустите

grep-aptavail -F Section hamradio

Это покажет полные метаданные пакета для каждого пакета в секции hamradio. Если вы хотите увидеть имена пакетов, запустите

grep-aptavail -n -F Section -s Package hamradio

Если ваша система настроена для многоархива, тот же пакет может отображаться более одного раза в этом листинге, если он создан для большего, чем одна архитектура. Чтобы уточнить это, используйте

grep-aptavail -n -F Section -s Package hamradio | sort | uniq

или

grep-aptavail -n -F Section -s Package hamradio | sort -u

, чтобы отсортировать список пакетов и удалить дубликаты пакетов с тем же именем.

Обратите внимание, что вам нужно будет использовать фактическое имя раздела, которое отличается от «удобочитаемого» имени, которое Synaptic показывает в своем графическом интерфейсе. Например, поисковые запросы используют имя раздела hamradio вместо строки «Любительское радио», показанное в Synaptic.

См. Справочную страницу для dctrl-tools для полного описание всех опций и некоторые примеры.

11
ответ дан 24 May 2018 в 07:33

Больше полей в одной строке с произвольным разделителем

Следующий однострочный шрифт будет печатать все уникальные имена пакетов раздела репозитория вместе с их описанием, каждый из которых будет содержать одну строку. Все поля разделяются символом трубопровода, то есть готовы к преобразованию в таблицу каналов Markdown. Полученную таблицу можно найти на моем веб-сайте.

grep-aptavail -n -s Package,Description -F Section hamradio |paste -sd '||\n' |sed 's:^:|:' |sort -u
3
ответ дан 24 May 2018 в 07:33

Вы можете использовать следующую команду для получения списка пакетов, принадлежащих данному разделу:

$ dpkg-query -W -f='${binary:Package} ${Section}\n' | awk '{if ($2 == "shells") {print $1}}'
bash
bash-completion
busybox-initramfs
busybox-static
dash
zsh
zsh-common
2
ответ дан 24 May 2018 в 07:33

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

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