Yanıtlar:
Tüm normal ifadeler grep
ile aynı shell
. Diski listelemek için ? , aşağıdakileri kullanın
fdisk -l | grep 'sd?*'
Aslında, yukarıdaki basitleştirilmiş versiyon ile yukarıdakilere ulaşılabilir:
fdisk -l | grep sd
Muhtemelen kullanmak istedin egrep
:
fdisk -l | grep sd..?
Ancak doğru düzenli ifadeyi kullanmanız yeterli olabilir:
fdisk -l | grep 'sd.\|sd..'
Açıklama:
egrep
eşittir grep -E
farklı, gelişmiş düzenli ifadeler .
.
anlamına geliyor herhangi bir karakter
\|
anlamına geliyor veya
Man grep'e bakınız:
-E, --extended-regexp Interpret PATTERN as an extended regular expression (ERE, see below). grep understands three different versions of regular expression syntax: “basic” (BRE), “extended” (ERE) and “perl” (PCRE). In GNU grep, there is no difference in available functionality between basic and extended syntaxes. In other implementations, basic regular expressions are less powerful. The following description applies to extended regular expressions; differences for basic regular expressions are summarized afterwards. Perl-compatible regular expressions give additional functionality, and are documented in pcresyntax(3) and pcrepattern(3), but work only if PCRE is available in the system. The period . matches any single character. Alternation Two regular expressions may be joined by the infix operator |; the resulting regular expression matches any string matching either alternate expression.
egrep
. :) (2) Sonra başka bir şey yapacak touch sd..1 sd..2
. Umarım nedenini biliyorsundur.
?
veya*
veya[…]
ya da kabarcıklı kabarcığın oluşmasını istemiyorsanız kabarcıklı kabarmayı tetikleyebilecek herhangi bir sözdizimi. Geçerli dizininiz içeriyorsasdb
ve / veyasda
, çıktısıfdisk -l | grep sd[ab]
farklı olurdu. Aldığınız herhangi bir cevabı geçmek niyetinde?
veya*
içingrep
ve tırnak içine almazsa kusurludur.