Как узнать путь к значку, который используется в папке?

GNU grep

Ваш конкретный случай - извлечение текста между двумя шаблонами в строке / строке. Это было рассмотрено в вопросе 2012 года. Как использовать sed / grep для извлечения текста между двумя словами ?. В частности, как упоминалось в анишане, вы можете использовать обратные и обратные шаблоны с флагом Perl-regex -P. В вашем конкретном случае решение было бы

grep -o -P '(?<=\*\*).*(?=\*\*)' input.txt

Однако, как Как использовать sed / grep для извлечения текста между двумя словами? , -P GNU grep. Имейте это в виду, если вы портируете свои сценарии / команды между разными системами * nix.

Perl

Вместо того, чтобы пытаться использовать регулярное выражение Perl, давайте просто использовать Perl:

$ perl -a -F\\*\\* -lane 'print $F[1] if /\*\*/' input.txt
word

Это имеет два преимущества , Во-первых, он определяет разделитель для «полей», что означает, что мы можем обрабатывать отдельные элементы, разделенные **. Во-вторых, синтаксически это немного немного запутывает, чем обратный / обратный шаблон.

Python

Конечно, есть и другие способы сделать это, и один из них - Python. Сценарий Python 2.7:

#!/usr/bin/env python
from __future__ import print_function
import sys

for f in sys.argv[1:]:
    with open(f) as fd:
        for line in fd:
            if line.startswith('**'):
                 print(line.split('*')[2])

Вы также можете сделать его однострочным и использовать перенаправление stdin:

python -c 'import re,sys; print "\n".join([ l.split("**")[1] for l in sys.stdin if "**" in l  ])' < input.txt

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

python -c 'import re,sys; print "\n".join([ re.split("\*\*",l)[1] for l in sys.stdin if "**" in l  ])' < input.txt
1
задан 24 April 2018 в 18:35

3 ответа

Это зависит от вашей темы. Обычно это /path/to/your/icon/theme/directory/places/xx/folder.svg (или .png) или /path/to/your/icon/theme/directory/xx/places/folder.svg (xx обозначает разные размеры).

Каталоги тематических тем обычно расположены в /usr/share/icons/ (общесистемный) или ~/.icons/ (локальный) или ~/.local/share/icons/ (локальный).

На скриншоте кажется, что вы используете тему значка Adwaita. В этом случае вы должны найти значок в /usr/share/icons/Adwaita/xx/places/.

1
ответ дан 22 May 2018 в 11:16

Это зависит от вашей темы. Обычно это /path/to/your/icon/theme/directory/places/xx/folder.svg (или .png) или /path/to/your/icon/theme/directory/xx/places/folder.svg (xx обозначает разные размеры).

Каталоги тематических тем обычно расположены в /usr/share/icons/ (общесистемный) или ~/.icons/ (локальный) или ~/.local/share/icons/ (локальный).

На скриншоте кажется, что вы используете тему значка Adwaita. В этом случае вы должны найти значок в /usr/share/icons/Adwaita/xx/places/.

1
ответ дан 17 July 2018 в 16:13

Это зависит от вашей темы. Обычно это /path/to/your/icon/theme/directory/places/xx/folder.svg (или .png) или /path/to/your/icon/theme/directory/xx/places/folder.svg (xx обозначает разные размеры).

Каталоги тематических тем обычно расположены в /usr/share/icons/ (общесистемный) или ~/.icons/ (локальный) или ~/.local/share/icons/ (локальный).

На скриншоте кажется, что вы используете тему значка Adwaita. В этом случае вы должны найти значок в /usr/share/icons/Adwaita/xx/places/.

1
ответ дан 23 July 2018 в 17:08

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

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