строка извлечения от той же строки

Ошибка "отсутствующая связка" заключается в том, что вы повторили имя каталога после -типа f, и find не знает, как это разобрать.

Чтобы избежать обхода подкаталогов, необходимо обрезать каталоги, а не обычные файлы. Однако, вы не должны убирать начальный каталог, иначе find не будет обрабатывать ничего, кроме него. Легкий способ распознать стартовую директорию - организовать ее имя так, чтобы оно было . .

find /opt/projectname/bin/. -name . -o -type d -prune -o -print

Explanation:

  • -name . - если имя . , [ничего не делать]
  • - иначе: -тип d - если файл является каталогом, не опускайтесь в него
  • - иначе: распечатайте путь
-2
07.01.2015, 16:56
2 ответа

Вот таблица TXT снова в простом тексте:

A       B       C       D       E
21      63      apple   yellow  5
23      69      lemon   green   6
45      135     orange  yellow  7
67      201     mango   green   4
54      162     potato  maroon  5

Хотя я мог бы подумать о решении с низкой сложностью, я думаю, что это немного взлома :-) Предположим, что таблица TXT файл называется Table1

$ head -1 table1 && grep '\b\(potato\|apple\)\b' table1

Это займет первую строку и добавит к нему GREP . \ b - это граница слова. Так что это гарантирует, что слова, такие как «Грейпл (крючок)» :) Другое более сложное решение предположило, что A, B, C ... разделены табуляторами \ T :

$ grep '\(\b\(potato\|apple\)\b\|\([A-Z]\|\(\t\|\n?$\)\)\)' table1
0
28.01.2020, 05:17

Это было жестко заказным в Nautilus в соответствии с решением DEV к , только показывают базовый тип информации в столбце , по умолчанию, так что сортировка по типу Семейства типа группы.
Основные типы определены в Nautilus-file.c на основе общих (символических) значков значков 1 :

struct {
        const char *icon_name;
        const char *display_name;
} mime_type_map[] = {
    { "application-x-executable", N_("Program") },
    { "audio-x-generic", N_("Audio") },
    { "font-x-generic", N_("Font") },
    { "image-x-generic", N_("Image") },
    { "package-x-generic", N_("Archive") },
    { "text-html", N_("Markup") },
    { "text-x-generic", N_("Text") },
    { "text-x-generic-template", N_("Text") },
    { "text-x-script", N_("Program") },
    { "video-x-generic", N_("Video") },
    { "x-office-address-book", N_("Contacts") },
    { "x-office-calendar", N_("Calendar") },
    { "x-office-document", N_("Document") },
    { "x-office-presentation", N_("Presentation") },
    { "x-office-spreadsheet", N_("Spreadsheet") },
};

Типы, которые не падают в вышеуказанные категории, отображаются как Неизвестно :

if (basic_type == NULL) {
    basic_type = g_strdup (_("Unknown"));

В результате файл с типом MIME приложение / X-myokit (с соответствующим символическим значком Application-X-Generic ) будет Перечислены как Неизвестный в столбце в столбце во время файла с типом MIME Text / X-myokit (с соответствующим символическим значком значка Text-X- Общий ) будет перечислен в виде текста в столбце в столбце (см. Также различные системные файлы, такие как *. Итак файлы под / usr / lib или *. Mo файлы в / usr / Share / locale - они все перечислены как неизвестны , но если вы выбираете один из них и Hit Alt + Введите Вы получаете подробное, точное я нформация).


Вы можете сделать список Nautilus что-то еще, если вы используете имя значка в вашем файле XML . Хотя ваши варианты ограничены вышеупомянутыми категориями. Итак, например Если вы хотите каждый из ваших *. MMT файлов, которые будут перечислены в виде программы в столбце , вы редактировали ваш x-myokit.xml Как это:

<?xml version="1.0" encoding="UTF-8"?>
<mime-info xmlns='http://www.freedesktop.org/standards/shared-mime-info'>
    <mime-type type="application/x-myokit">
        <comment>Myokit model definition</comment>
        <generic-icon name="text-x-script"/>
        <glob pattern="*.mmt"/>
    </mime-type>
</mime-info>

Не забудьте обновить базу данных MIME с:

update-mime-database ~/.local/share/mime

, если вам нужна дополнительная информация, вы можете включить / проверить колонку TOMIME в Nautilus ] Предпочтения (или с DConf / Gsettings : Добавить MIME_TYPE - org.gnome.nautilus.list view Видимые по умолчанию ).

1: RUN GIO Info-A Стандарт :: Символический файл значка Чтобы увидеть соответствующие символические имена значков (на более старых установках заменить Gio Info с GVFS-info. )

-121--105483-

Использование awk :

awk 'FNR == 1 || /potato|apple/'

Использование SED :

sed -n '1p; /potato\|apple/p'

В обоих случаях строка 1 и любой Строки сопоставления Partato | Apple напечатаны.

1
28.01.2020, 05:17

Теги

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