Если все, что вам нужно, это фильтровать регулярные выражения, используйте grep
. Но то, что вам нужно, выходит за рамки регулярных выражений. Вы можете использовать практически любой язык программирования, который вам удобен. Awk присутствует во всех системах POSIX и может легко обрабатывать файлы построчно, но его программные функции не на высшем уровне. Perl упрощает построчную обработку и имеет лучшую обработку строк, а также множество доступных библиотек. Python прост в освоении и имеет очень хороший набор доступных библиотек. Есть много других возможностей.
Чтобы проверить наличие палиндромов в * BSD и Linux, вы можете использовать утилиту rev
в конвейере. Он переворачивает каждую строку файла. Чтобы найти палиндромы:
rev /usr/dict/words | paste /usr/dict/words - | sed -n 's/^\(.*\)\t\1$/\1/p'
perl -l -ne 'print if reverse($_) eq $_' /usr/dict/words
Чтобы найти обратимые слова:
rev /usr/dict/words | grep -Fxf /usr/dict/words
perl -l -ne '$dict{$_} = 1; END {foreach (keys %dict) {print if $dict{reverse($_)}}}'
Аргументы Position должны указываться в определенном порядке в командной строке.
для вашего конкретного примера :vgcreate VG _новый PV
VG _новые должны идти первыми, а затем PV. В большинстве случаев позиционные аргументы идут в конце команды.
Большинство других аргументов, в основном (, если не всегда ), с префиксом -или --, могут идти в любом порядке
vgcreate --clustered y --maxlogicalvolumes 2 newvol /dev/sda1
совпадает с
vgcreate --maxlogicalvolumes 2 --clustered y newvol /dev/sda1
в то время как это в лучшем случае приведет к ошибке или может привести к некоторым неопределенным или нежелательным последствиям:
vgcreate --clustered y --maxlogicalvolumes 2 /dev/sda1 newvol
К сожалению, нельзя. Документ LVM2 не может объяснить это.
Чтобы узнать, что это такое, вы, конечный пользователь инструментов, должны копаться в исходниках программы. Человек по имени Дэвид Тейгланд представил новую систему для набора инструментов LVM2 в августе 2016 года, благодаря которой все его справочные страницы теперь выглядят так. Раздел синопсиса выглядит так, как вы видели, а настоящий синопсис на самом деле находится в разделе «ИСПОЛЬЗОВАНИЕ» ниже.
Комментарий в исходном коде, не представленный конечным пользователям в качестве документа, объясняет, что командная строка для всех инструментов считается состоящей из аргументов опций (, начинающихся с минусов )и . ] позиционные аргументы (, значение которых определяется их позицией в векторе аргументов, когда все опциональные аргументы удалены ), и что они оба далее подразделяются на обязательные и необязательные .
Справочные страницы LVM2 не самые лучшие. Дополнительным симптомом этого является то, что официальный веб-сайт содержит гиперссылки на несуществующие веб-страницы руководства.