Ошибка "отсутствующая связка" заключается в том, что вы повторили имя каталога после -типа f
, и find
не знает, как это разобрать.
Чтобы избежать обхода подкаталогов, необходимо обрезать каталоги, а не обычные файлы. Однако, вы не должны убирать начальный каталог, иначе find
не будет обрабатывать ничего, кроме него. Легкий способ распознать стартовую директорию - организовать ее имя так, чтобы оно было .
.
find /opt/projectname/bin/. -name . -o -type d -prune -o -print
Explanation:
-name .
- если имя .
, [ничего не делать] -тип d
- если файл является каталогом, не опускайтесь в негоВот таблица 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
Это было жестко заказным в 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.
)
Использование awk
:
awk 'FNR == 1 || /potato|apple/'
Использование SED
:
sed -n '1p; /potato\|apple/p'
В обоих случаях строка 1 и любой Строки сопоставления Partato | Apple
напечатаны.