fdisk -l | joker karakterli grep komutu sonuçları göstermiyor


0

Neden komutlar

fdisk -l | grep sd? 
fdisk -l | grep sd?? 

bu durumda çalışma ve

fdisk -l | grep sd[ab] 

Eserleri ?

terminal window


Öncelikle bu argümanları birlikte alıntılamalısınız. ? 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çeriyorsa sdb ve / veya sda, çıktısı fdisk -l | grep sd[ab] farklı olurdu. Aldığınız herhangi bir cevabı geçmek niyetinde ? veya * için grep ve tırnak içine almazsa kusurludur.
Kamil Maciorowski

Nakini sorumu düzenlediğin için teşekkür ederim:] Kamil alıntılar hakkında ders için teşekkür ederim. Dziekuje bardzo.
Tomas.R

Yanıtlar:


1

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

Detaylı cevap için teşekkürler Nakini. Mükemmel çalıştı. Kamil Önerdiğiniz gibi dokunuşlu dosyalar oluşturdum ama fdisk -l | grep 'sd? *' bu aygıtlardan hiçbirini yalnızca aygıtları döndürmedi.
Tomas.R

@KamilMaciorowski, her iki kaygınıza da katılıyorum. Cevabımı, görüşlerinizle güncelledim.
Nakini

0

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 -Efarklı, 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.

İki sorun: (1) İlk örneğiniz kullanmıyor egrep. :) (2) Sonra başka bir şey yapacak touch sd..1 sd..2. Umarım nedenini biliyorsundur.
Kamil Maciorowski
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.