англійськафранцузькаіспанська

Ad


Значок OnWorks

ara - Онлайн у хмарі

Запустіть ara в постачальнику безкоштовного хостингу OnWorks через Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

Це команда ara, яку можна запустити в постачальнику безкоштовного хостингу OnWorks за допомогою однієї з наших численних безкоштовних робочих станцій, таких як Ubuntu Online, Fedora Online, онлайн-емулятор Windows або онлайн-емулятор MAC OS

ПРОГРАМА:

ІМ'Я


ara - утиліта для виконання логічних запитів регулярного виразу до бази даних пакетів Debian

СИНТАКСИС


Партія режим:
ара запит [параметри].

У пакетному режимі, ара приймає один або кілька запитів як аргументи, читає файли бази даних
відповідно до його конфігурації та виводить результати до stdout.

інтерактивний режим:
ара [параметри] -i

З -i or - інтерактивна варіантів, ара читає файли бази даних, а потім запитує
користувача для запитів або команд. Результати відображаються (за допомогою пейджера, наприклад
більше or менше якщо необхідно), і ара знову запитує користувача. Інтерактивний режим сильно
рекомендується, оскільки завантаження баз даних пакетів може тривати довго, але після завантаження запити запускаються
досить швидко. Це головна перевага ара над такими інструментами, як dpkg-iasearch or
dpkg-dctrl.

Про прив’язки клавіш див KEY ПРИВ'ЯЗКИ.

Графічний інтерфейс (GTK2):
графічний інтерфейс, Xara(1), надається пакетом Debian xara-gtk.

Запит синтаксис
Див ПРИКЛАДИ розділ для швидкого ознайомлення ; Xara має певну вбудовану допомогу. The
синтаксис детально описано нижче.

ОПИС


ара та Xara дозволити користувачеві здійснювати пошук у базі даних програмного пакета Debian (включаючи
встановлені та видалені пакети) з використанням потужних запитів із логічних комбінацій
регулярні вирази, що діють на поля, задані шаблонами.

Наприклад, запит розділ=utils & залежить:(gtk or tk8 or xlibs or де or гном or qt)
& Debian & пакет відображатиме пакети в розділі утиліти які мають графічні
інтерфейси (оскільки вони залежать від графічних наборів інструментів або бібліотек X11), і чиї
опис містить слова Debian та пакет.

ОБГОВОРЕННЯ


Користувачі Debian можуть легко встановлювати програмне забезпечення за допомогою команд dselect or apt-get встановлювати.
Вони можуть вибрати (у нестабільному Debian 3.1) із понад 30,000 XNUMX пакетів. Знаходження правильного
пакет може бути досить складним. Незважаючи на те, що пакети поділяються на неочищені розділи,
пакетів все ще занадто багато, і читати всі описи не може бути й мови.

Файли бази даних величезні, а їхній поштовий синтаксис ускладнює пошук
лінійно-орієнтовані інструменти, такі як grep. Існують такі команди, як dpkg-iasearch(1) або
dpkg-dctrl(1), але їх можливості обмежені. Інструменти керування графічними пакетами, такі як
as здібності or синаптичні мають пошукові можливості. Хоча ара може зателефонувати схильний встановити або
видаляйте пакунки, його орієнтація — це потужний інструмент пошуку. Дійсно, назва ара
походить від наказової форми турецького дієслова пошук що означає «шукати».

THE ДЕБІАН ПАКЕТ DATABASE


База даних пакунків Debian — це величезний текстовий файл за адресою /var/lib/dpkg/available (або а
колекція текстових файлів під /var/lib/apt/lists/). Ці файли знаходяться в поштовій скриньці
формат, і типовий запис виглядає так:

Пріоритет: обов'язковий
Розділ: база
Встановлений розмір: 460
Походження: debian
Супроводжувач: Dpkg Development[захищено електронною поштою]>
Помилки: debbugs://bugs.debian.org
Архітектура: i386
Джерело: dpkg
Версія: 1.10.24
Замінює: dpkg (<< 1.10.3)
Залежить: libc6 (>= 2.3.2.ds1-4), ....
Ім'я файлу: pool/main/d/dpkg/dselect_1.10.24_i386.deb
Розмір: 119586
MD5sum: c740f7f68dab08badf4f60b51a33500a
Опис: інструмент користувача для керування пакетами Debian
dselect є основним інтерфейсом користувача для встановлення, видалення та
управління пакетами Debian. Це інтерфейс до dpkg.

Таким чином, кожен пакет описується набором полів (наприклад, Package, Description, Version...).

QUERY СИНТАКС І СЕМАНТИКА


Тут ми докладно описуємо синтаксис запиту. Починаючи з версії 1.0, ара представляє нове,
спрощений синтаксис, який є досить традиційним і повинен бути знайомий кожному, хто використовує
пошукові системи. Пошукові терміни просто поєднуються з І, OR та НЕ логічні оператори.
Подивившись на ПРИКЛАДИ розділ в кінці цього посібника має надати вам a
відправна точка.

Розглянемо набір D описів пакетів Debian, що містяться у файлі
/var/lib/dpkg/available (або у файлах під /var/lib/apt/lists/). Кожен опис є а
набір пар форми (f,v) де f та v є рядками: f це назва поля
(а саме, пакет, Опис, ім'я файлу, Залежитьі т.д.); v є його цінністю. Таким чином D є набір
набір пар, що утворюють Всесвіт. Запити вибирають підмножини всесвіту D.
Параметри виведення визначають, які поля вибраної частини всесвіту відображати, і
як їх відобразити.

Запити
A запит є булевою комбінацією атомарних виразів. An атомний вираз вибирає a
підмножина множини D описів. Я називаю цей набір сенс виразу; якщо e
позначає атомарний вираз, його значення позначається [e]. Значення логічного значення
комбінація атомарних виразів є просто логічним поєднанням значення його
складові. Іншими словами, якщо e1 та e2 то є атомними виразами e1 & e2 це
запит, значення якого є перетином значень e1 та e2; і значення
e1 | e2 є об'єднання значень e1 та e2.

Атомний вирази
Атомарні вирази можуть бути у формі модель, /регулярний вираз/, цитований_рядок, fieldspec
operator1 рядокабо fieldspec operator2 RegExp.

Boolean Оператори та постійна
e1 & e2 (Також e1 І e2, e1 та e2)
Це логічна кон’юнкція (перетин множин). Повертає перетин [e1]
і [e2], тобто пакети, що задовольняють як e1, так і e2.

e1 | e2 (Також e1 OR e2, e1 or e2)
Це логічна диз'юнкція (об'єднання множин). Об'єднання [e1] і [e2], тобто пакети
що задовольняє e1, e2 або обидва.

!e1 (Також НЕ e1, НЕ e1)
Це логічне заперечення (доповнення множини). Доповнення до [e1], тобто пакети
не задовольняє e1.

Зверніть увагу, що ~ означає поточний специфікатор поля за замовчуванням і не є an
псевдонім для оператора доповнення.

правда (Також всі)
Набір усіх описів, тобто всіх пакетів.

false (Також жодного)
Порожній набір, тобто без пакетів.

Поле специфікатори
Специфікатор поля fieldspec — це список шаблонів полів, розділених комами.

Шаблони полів схожі на прості шаблони оболонки і можуть містити символи-зірки (які
означає будь-що) або знаки питання (які означають будь-який окремий символ). Вони є
не чутливий до регістру. Вони вказують набір полів.

Наприклад description та Опис вказати набір полів { Опис }, тоді як
де* вказує { опис, Залежить }.

Спеціальний специфікатор ~ позначає поточний специфікатор за замовчуванням (див. нижче).

Поточний поля специфікатори та спрощений атомний вирази
Необхідність повторити специфікатор поля може зробити наведений вище синтаксис громіздким. Ось чому
є ток поле специфікатор. Поточне вказане поле, за замовчуванням,
Опис, пакет. Спрощені атомні вирази - це просто слова або спрощена оболонка
вирази (які не потрібно брати в подвійні лапки), і в них здійснюється пошук
поля в поточному специфікаторі поля. Вони можуть складатися з літер, цифр, символів підкреслення,
тире та крапки. Вони можуть містити зірочки знаків питання, які інтерпретуються як для
шаблони полів (тобто як спрощені вирази оболонки). Якщо використовуються подвійні лапки, інше
можна використовувати символи та пробіли.

Специфікатор поля за замовчуванням у запиті запит можна змінити на fieldspec просто
з префіксом запиту fieldspec:. Це дає fieldspec:запит. Однак якщо запит is
складні (тобто містить двійкові логічні оператори), які потрібно укласти запит in
дужки, як у fieldspec:(запит 1 or запит 2).

рядок літерали
рядок літерали можна давати з подвійними лапками або без них; без подвійних лапок
Синтаксис такий же, як і для ідентифікаторів C, за винятком того, що ви можете використовувати тире, ви повинні починати з a
латинська літера ([A-zA-Z]) і ви можете продовжити латинськими літерами, десятковими цифрами або
підкреслення ([a-zA-Z0-9_]). У подвійних лапках дозволені всі символи, крім
подвійні лапки, перед якими має стояти зворотний слеш.

Змінні
Результати запитів можна зберігати у змінних, які пізніше можна буде викликати. Це не так
дуже корисно в пакетному режимі, але корисно в інтерактивному та графічному режимах.

Назви змінних починаються з долара і відповідають звичайним умовам щодо змінних, тобто вони
може бути будь-якою сумішшю буквено-цифрових символів і символів, таких як підкреслення, тире тощо.

Імена змінних чутливі до регістру, тому $Встановлено та $встановлено різні.

Щоб призначити результат запиту (який являє собою набір пакетів) змінну з іменем $змінна
просто виконайте запит $змінна := запит. Потім ви можете згадати цей конкретний набір за
просто писати $змінна.

приклад: $встановлено := статус: (встановлено & !не встановлено)

Оператори
Ієрархічні оператори порівняння можна заперечувати, змінюючи напрямок кута
дужки та додавання або видалення знака рівності в кінці (<= стає >). Інші оператори
заперечуються таким чином: = стає != та =~ стає !~.

fieldspec=рядок
Атомарний вираз для вибору пакетів, що мають поле в fieldspec має значення а
значення точно дорівнює рядок.

fieldspec (спец. поля<=рядок, fieldspec>рядок, fieldspec>=рядок)
Атомарний вираз для вибору пакетів, що мають поле в fieldspec чия вартість
строго менше ніж рядок. Використовується порядок версій Debian. Це
порядок сумісний із натуральним порядком цілих чисел і з версією Debian
числа. При порівнянні рядків, що не містять спеціальних символів, літери сортуються
перед числами, на відміну від лексикографічного порядку ASCII, до якого ми звикли. Це означає
що шістнадцяткові числа (наприклад, суми MD5) не матимуть свого звичайного порядку.

Зверніть увагу, що рядок має бути праворуч від оператора (тобто ви не можете писати
1000 < Розмір).

fieldspec=~/вираз/ (Також fieldspec:/вираз/)
Вибирає описи, поле яких названо fieldspec існує і чиє значення відповідає,
з урахуванням регістру, регулярний вираз вираз.

fieldspec=~/вираз/i (Також fieldspec:/expression/i)
Те саме, що й вище, але регулярний вираз не чутливий до регістру.

fieldspec=~/вираз/w (Також fieldspec:/expression/w)
Те саме, що й вище, але регулярний вираз чутливий до регістру та відповідає лише за
межі слів. Зауважте, що перехід від букви до цифри або від цифри до букви є
вважаються межами слів.

fieldspec=~/вираз/iw (Також fieldspec:/expression/iw)
Регулярний вираз тут не чутливий до регістру та відповідає на межі слів.

регулярний вирази
Регулярні вирази подаються між парою косих рисків; після останньої косої риски може слідувати
комутативна послідовність букв, що позначають прапори. Синтаксис регулярного виразу схожий на sed:
групувальні дужки та чергування мають бути зворотною косою рискою. Для отримання додаткової інформації див
Об’єктивна глава посібника з Caml про модуль Str. Коротко (x,x1,x2 є мета-символами
що позначають регулярні вирази):

/./ Будь-який персонаж.

/тото/ Літеральний рядок toto.

/x1x2/ Конкатенація.

/x1\|x2/
Чергування.

\(x1\)*
Закриття зірки.

[cd] Діапазон символів.

\b Межі слів.

/x/i Регістр не чутливий.

/x/w На межі слів.

Зауваження
Більшість запитів міститиме значну кількість метасимволів оболонки. Наприклад,
Логічна диз'юнкція позначається символом pipe, який використовується всіма відомими оболонками.
Проблема посилюється тим, що в них можуть з’являтися назви реальних команд
використані вирази; Таким чином, успішне налаштування конвеєра UNIX помилково
правдоподібний.

При дзвінку ара з командного рядка в пакетному режимі, настійно рекомендується захистити
ваші запити, оточуючи їх простими лапками; ніколи не пиши щось подібне ара
Пакет*=~/зупинка|перезавантаження|вимкнення/ оскільки це, швидше за все, перезавантажить вашу систему (і є
неправильний синтаксис регулярного виразу, якщо зупинка or перезавантажувати or вимикання мається на увазі: труби повинні бути
зворотний скіс). Натомість треба писати ара 'Упаковка*=~/зупинка\|перезавантаження\|вимкнення /'

ВАРІАНТИ


операція
- інтерактивна, -i
Інтерактивний режим; запитати запит, відобразити його.

-config (також для Xara)
Встановити назву файлу конфігурації (за замовчуванням $HOME/.ara/ara.config).

-noconfig
Не намагайтеся створити файл конфігурації.

- немає історії
Не зберігайте історію команд

Документи опції
-допомога (також для Xara)
Покажіть довідку

-про Покажіть авторські права, подяку та відданість.

-версія, -про (також для Xara)
Надрукувати автора, ліцензію, версію та присвяту (і вийти, якщо викликано з CLI).

-приклади
Відобразити деяку документацію, включаючи приклади виходу.

-q
Запит (наприклад, залежить:xlibs & !package:xcalc).

- запит
Подібне

Опції що стосуються до термінал
- прогрес (- немає прогресу)
Показувати або не показувати індикатор прогресу під час завантаження бази даних.

-лінії
Встановити висоту термінала для інтерактивного дисплея. За замовчуванням це взято з
змінна оточення ЛІНІЇ або як 25, якщо він не визначений.

- колони
Встановити ширину термінала для інтерактивного відображення. За замовчуванням це взято з
змінна оточення КОЛОНИ або як 25, якщо він не визначений.

-пейджер (-нопейджер)
Використовуйте (або не використовуйте) пейджер, який відображає довгий вихід в інтерактивному режимі. Пейджер
Команда визначається у файлі конфігурації $HOME/.ara/ara.config. За замовчуванням
це /etc/alternatives/pager. Пейджер використовується тільки при вихідному розмірі
перевищує висоту терміналу.

-відлагоджувати (також для Xara)
Увімкнути інформацію про налагодження

- рівень налагодження (також для Xara)
Встановити рівень налагодження (вищий – більш детальний, максимум – 100, за замовчуванням – 10)

дисплей Стилі
-новий Показувати лише найновішу версію кожного пакета.

-даремно Перелік усіх версій пакетів.

- короткий
Відображаються назви пакетів, які задовольняють запит (та їх версія if -даремно встановлено), с
кілька пакетів на рядок.

-список
Те саме, але відображати одну назву пакета на рядок, без фігурних дужок (за замовчуванням).

-сирий
Для кожного пакета, який задовольняє запит, відобразіть усі вибрані поля.

- стіл
Відобразити результати у вигляді таблиці.

-без кордонів
Не малюйте межі ASCII для виводу таблиці.

- кордони
Намалюйте межі ASCII для виводу таблиці.

-рахувати
Відобразити кількість відповідних пакетів.

- поля
Обмежте виведення вказаними полями. Додаткові специфікатори ширини використовуються з
- стіл варіант і ігнорується в іншому випадку. Використовуйте *, щоб відобразити всі поля (але не забувайте
втечі зіркового персонажа зі своєї оболонки).

-аст Дампуйте абстрактне синтаксичне дерево аналізованих запитів до stderr.

ПРИКЛАДИ


ара 'Section=utils'
Укажіть назву кожного пакета в розділі utils.

ара 'Section=utils та !Залежить:(gnome|kde|gtk)'
... крім тих, чиє поле залежності відповідає регулярному виразу gnome\|kde\|gtk

ара -список 'Section=utils та Статус: (встановлено & !не встановлено)'
Перелік усіх встановлених пакетів у розділі утиліти.

ара - короткий 'section=utils та !залежить:(gtk|gnome|kde) та пріоритет = необов'язковий'
... перерахувати кілька імен на рядок і показати лише додаткові пакети.

ара - короткий 'section=utils & (!залежить:(gtk|gnome|kde) | розмір<100000) & пріоритет = необов'язковий'
Ну, виключайте gtk, gnome або kde лише якщо 100000 XNUMX байт або більше.

ара -без кордонів - поля Упаковка, розмір, комплектація: 20 - стіл \
- короткий 'section=utils & (!залежить:(gtk|gnome|kde) | розмір<100000) & пріоритет = необов'язковий'

... показати поля Package, Size і Maintainer з наведених вище результатів як гарний ascii
таблицю, обмежуючи поле супроводжувача 20 символами, але без грубих меж ASCII.

ара -даремно - поля Упаковка: 8, Розмір, Опис: 100 \
- стіл 'Розділ=ігри та НЕ (Залежить:(gtk|sdl|kde|opengl|gnome|qt)
or /стріляти\|вбити\|знищити\|вибух\|раса\|бомба/iw
or /багато\(-\|\)гравець\|стратегія\|завоювання\|3\(-\|\)d/iw)
та Залежить:(xlibs or vga)
та Розмір <= 1000000 "

Припустивши, що дисплей складається з 125 стовпців, відобразіть перші вісім символів назви пакета,
розмір у байтах і перші сто символів (першого рядка) опису
всі пакунки в розділі ігор, розмір яких не перевищує мільйона байт, і
які не залежать від модних речей, таких як GTK, SDL, KDE, OpenGL, Qt або Gnome, не згадуйте
деякі форми насильства (стріляти, вбивати тощо) в їх описі не описані
як багатокористувацький, стратегічний, завойовний або тривимірний, і все ж залежить від будь-якого xlibs
або svga, щоб виключити консольні ігри.

ШВИДКІСТЬ


ара зчитує всю базу даних у пам'ять, а потім обробляє запити. Оскільки база даних є
зазвичай великий, це займає деякий час. Однак тоді запити виконуються досить швидко. Тож уточнюйте
кілька запитів або скористайтеся - інтерактивна можливість амортизації вартості читання
бази даних.

Використовуйте ara онлайн за допомогою служб onworks.net


Безкоштовні сервери та робочі станції

Завантажте програми для Windows і Linux

  • 1
    глибоко чистий
    глибоко чистий
    Сценарій Kotlin, який руйнує всю збірку
    кеші з проектів Gradle/Android.
    Корисно, коли Gradle або IDE дозволяють
    вниз. Сценарій протестовано на
    macOS, але...
    Завантажити deep-clean
  • 2
    Плагін Eclipse Checkstyle
    Плагін Eclipse Checkstyle
    Плагін Eclipse Checkstyle
    інтегрує код Java Checkstyle
    аудитора в IDE Eclipse. The
    плагін забезпечує зворотний зв’язок у режимі реального часу
    користувач про насильство...
    Завантажте плагін Eclipse Checkstyle
  • 3
    AstrOrzPlayer
    AstrOrzPlayer
    AstrOrz Player — безкоштовний медіаплеєр
    програмне забезпечення, частина на основі WMP і VLC. The
    плеєр в мінімалістичному стилі, с
    більше десяти кольорів теми, а також можна
    б ...
    Завантажити AstrOrzPlayer
  • 4
    movistartv
    movistartv
    Kodi Movistar+ TV є ДОДАТКОМ для XBMC/
    Kodi que permite disponer de un
    decodificador de los servicios IPTV de
    Movistar інтегрований в один із одним
    медіацентри ма...
    Завантажити movistartv
  • 5
    Код :: Блоки
    Код :: Блоки
    Code::Blocks — безкоштовна програма з відкритим кодом,
    кросплатформенний C, C++ і Fortran IDE
    створений для задоволення найвимогливіших потреб
    своїх користувачів. Він розроблений, щоб бути дуже
    подовжує ...
    Завантажити Code::Blocks
  • 6
    Серед
    Серед
    Серед або розширений інтерфейс Minecraft
    а відстеження даних/структури є інструментом для
    відобразити огляд Minecraft
    світу, фактично не створюючи його. Це
    може ...
    Завантажити Midst
  • Детальніше »

Команди Linux

Ad