Обрезка одной части, если равный другой части?

Необходимо попробовать lspci, который обозначает "Список устройства PCI", он покажет Вам, какую видеокарту Вы имеете.

Xorg -version, покажет Вам Вашу версию Xorg.

vim /etc/X11/xorg.conf покажет Вам драйверы, что Xorg использует.

Надеюсь разрешение его немного.

2
16.04.2013, 12:47
2 ответа

Просто замените подстрокой, содержащей два случаев адреса с первой половиной подстроки, содержа только один адрес:

bash-4.2$ echo '
On dd mmm yyyy hh:mm +hhmm, from info@example.org (Example Dot Org):
On dd mmm yyyy hh:mm +hhmm, from info@example.org (info@example.org):
On dd mmm yyyy hh:mm +hhmm, from info@example.org:
' | sed -r 's/(, from (\S+)) \(\2\)/\1/'

On dd mmm yyyy hh:mm +hhmm, from info@example.org (Example Dot Org):
On dd mmm yyyy hh:mm +hhmm, from info@example.org:
On dd mmm yyyy hh:mm +hhmm, from info@example.org:
3
27.01.2020, 22:06
  • 1
    я закончил тем, что совершенствовал это к sed -r 's/^(On [0-3][0-9] [A-Z][a-z][a-z] [12][0-9]{3} [0-9][0-9]:[0-9][0-9] [+-][0-9]{4})(, from (\S+)) \(\3\):$/\1\2:/', который немного более строг в том, чему это соответствует, но также и более тесно соответствует моему использованию. Ваш пример был ярким как начальная точка. Большое спасибо и upvote для потомства. :) –  a CVn 26.04.2013, 23:23
perl -lane 'print "($F[07]):" eq "$F[8]" ? "@F[0..7]:" : "@F"'

Этот Perl один лайнер разделит строку на пробелах, так после строки, будет разделен на 9 частей:

On dd mmm yyyy hh:mm +hhmm, from info@example.org (info@example.org):

Это сравнит part8 (адрес электронной почты) с part9 (имя отправителей) и если они будут, то то же затем part8 будет удалено. отъезд Вас с:

On dd mmm yyyy hh:mm +hhmm, from info@example.org:
0
27.01.2020, 22:06

Теги

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