Bir Unix kılavuz sayfasındaki belirli bir bayrağa nasıl atlanır?


23

Terminalde bir Unix yazı sayfasını okurken, belirli bir bayrağın tanımına nasıl kolayca geçebilirim?

Mesela -obayrağının anlamını bilmem gerekiyor mount. Koştum man mountve -otarif edildiği yere atlamak istiyorum . Şimdilik, /-oancak bu seçeneğin aslında onu tanımlayan bölümden önce birkaç yerde bahsedildiğini araştırıyorum , bu yüzden biraz etrafa atlamalıyım.

Teşekkürler.

Yanıtlar:


27

Yaptığım gibi bayrak önünde birkaç boşluk koymak:

/     -o

Bu% 100 güvenilir değil ama daha az çembere atlıyorsunuz. Daha iyi bir başarı oranı istiyorsanız, deneyin "/^ +-o". Bu boşluklarla başlayan ve ardından -o ile başlayan çizgiler bulur. Sık sık bu garip ipi yazmak istemem.


11

Bu işlevi tanımlarımda tanımladım. .bashrc

function manswitch () { man $1 | less -p "^ +$2"; }

aşağıdaki gibi kullanabilirsiniz

manswitch grep -r

Bu komuta hattından aldım .

Not: -panahtarının argümanı less, ( ^) bir veya daha fazla boşluk ( +) ile başlayan ve ardından anahtarın (ikinci arg. So $2) başlayan bir satır aramaya daha az söyleyen bir regexp'tir , bu nedenle farklı formatlama ile çalışma avantajına sahiptir.


5

Ayrıca man sayfasını komut satırından belirli bir pozisyonda açabilirsiniz.

man -P 'less -p "     -o"' mount

Mümkün olduğu için oy verildi, ancak bu, insanın içinden aramaktan çok yazmak için biraz daha fazla. Yine de teşekkürler!
dotancohen

Birini man sayfasında tam olarak bir yere göndermek oldukça yararlıdır :)
rush

Evet, sadece senaryodaki bir adam sayfasını açmak zorunda olsaydım, nedense faydalı olacağını düşünüyordum. Teşekkür ederim!
dotancohen

3

@ piccobello'nun cevabı harika, ama adam sayfalarımdaki renkleri yiyordu. Borulamak yerine less( manzaten lessgenellikle varsayılan olarak kullandığından ), sadece değiştirilen lesskomutu iletmek için man:

function manswitch() { man -P "less -p \"^ +$2\"" $1 }

Bu, @piccobello'nun işlevinde olan işlevselliğini korur, ancak renkleri korur.


1

Diğer çözümler oldukça iyidir, fakat man sayfalarının sadece veri olduğunu ve onlarla Linux'ta neredeyse her şeyi kolayca yapabileceğinizi unutmayın.

bazı komutlar> file.txt

Sayfayı daha sonra değiştirebileceğiniz düz metin dosyasına dönüştürür. Bash el kitabının bir kopyasını bin dizinimde metin olarak tutuyorum, böylece sadece metin düzenleyicime yükleyebilirim, aradığım şeyleri araştırıp kopyalayıp yapıştırarak scriptleri düzenlerim.

Veya filtreler gibi borulara bağlayabilirsiniz.

adam bazı komut | grep -Bir satır sonra "bazı model"

Sizin için bir terminalde işe yaramasa da (bir arkadaşımın yardımıyla) bir man sayfasını alıp bir web tarayıcısında görüntüleyen bir betik yazdım, böylece daha iyi gezinti / arama özelliklerini kullanabiliyorum. azdan Biraz bağımlı, ama değiştirmesi kolay.

http://dl.dropbox.com/u/54584985/kman


3
man://Konqueror'da denemek isteyebilirsiniz . KDE'nin KIOSLAVE adlı bir sayfası var!
dotancohen

@dotancohen - Harika. Bunu bilmiyordum.
Joe,

@dotancohen -Ben sadece yunus denedim ve aynı zamanda çalışıyor, ancak man sayfalarını dizinler ve dosyalar olarak görüntülüyor ve bir dosyaya tıkladığınızda varsayılan tarayıcınızı başlatıyor. KIOSLAVE ile ilgili kısmı anlamıyorum. Ben denedim adam: // kioslave ve adam aynıydı: //.
Joe,

@dotancohen - Boşver - wikipedia 'da kioslavlara baktım. en.wikipedia.org/wiki/KIO
Joe,

Evet, KDE'nin hemen hemen her şeyi var. Keyfini çıkarın!
dotancohen

1

Sadece bunu yapan, flagman adında bir araç yazdım . Hala geliştirilme aşamasında ama zaten kullanılıyor. Örneğin:

$ ./flagman mount -o
       -o, --options opts
              Use the specified mount options.  The opts argument is a comma-separated list.  For example:

                     mount LABEL=mydisk -o noatime,nodev,nosuid


              For more details, see the FILESYSTEM-INDEPENDENT MOUNT OPTIONS and FILESYSTEM-SPECIFIC MOUNT OPTIONS sections.
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.