grep для одинарной обратной косой черты

В Perl есть оператор '-M' для даты модификации файла.

Этот онелайнер сортирует файлы как требуется. Первая строка сверху - самый молодой файл:

perl -e 'map { print "$_\n"; } sort { -M $a <=> -M $b } <*>'

или с помощью списка файлов

perl -e 'map { print "$_\n"; } sort { -M $a <=> -M $b } @ARGV' $(cat files)
1
02.03.2019, 11:02
2 ответа

Вы путаете прямую косую черту /sс обратной косой чертой \s-, а также нижний регистр -eс верхним регистром-E:

$ mount | grep -E '\s/\s'
/dev/sda3 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)

Обратите внимание, что \sна самом деле не является ни базовым регулярным выражением (BRE ), ни расширенным регулярным выражением (ERE )спецификатором -он действительно принадлежит PCRE (Perl -совместим регулярное выражение )-, однако по крайней мере GNU grep поддерживает его в других режимах.

2
27.01.2020, 23:22

Чтобы выполнить поиск вывода mountдля одиночной косой черты с помощью GNUgrep:

mount | grep -w '/'

В BSD grepпросто используйте

mount | grep ' / '

Нет необходимости в чем-то более сложном, так как команда mountвыводит точку монтирования с простыми пробелами вокруг нее.

1
27.01.2020, 23:22

Теги

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