Правила для одинарных кавычек отличаются от двойных.
По причине, которую вы показываете, двойные кавычки нельзя надежно использовать в bash, потому что нет разумного способа избежать восклицательного знака.
$ grep -oP "\\(.*(?!word).*right"
bash: !word: event not found
$ grep -oP "\\(.*(?\!word).*right"
grep: unrecognized character after (? or (?-
Вторая причина в том, что bash проходит через \!
, а не !
в grep. Отображение этого:
$ printf '%s' "\!"
\!
Когда вы пробовали использовать одинарные кавычки, двойная обратная косая черта не означает экранированную обратную косую черту, это означает две обратные косые черты.
$ printf '%s' '\\(.*(?!word).*right'
\\(.*(?!word).*right
Внутри одинарных кавычек все является буквальным, и нет никаких экранирований, поэтому способ написать регулярное выражение, которое вы пытаетесь, выглядит следующим образом:
$ grep -oP '\(.*(?!word).*right'
Изменяет значения по умолчанию для последующих меню.
Изhttps://github.com/yast/yast-storage-ng/blob/master/doc/user-stories/expert-partitioner.md
Если роль раздела — «Операционная система»
sets the following 'Formatting options' by default
Format partition: true
File System: Btrfs
Enable snapshots: true
Do not format partition: false
File System Id: 0x83 Linux
Encrypt: false
sets the following options for 'Mounting options'
Mount partition: true
Mount point: first free of /, /home, /var
Do not mount partition: false
Если роль раздела — «Данные и приложения ISV»
sets the following 'Formatting options' by default
Format partition: true
File System: XFS
Do not format partition: false
File System Id: 0x83 Linux
Encrypt: false
sets the following options for 'Mounting options'
Mount partition: true
Mount point: first free of /, /home, /var
Do not mount partition: false