Ubuntu terminali, Bir dosya adı penceresi-cmd stili (döngü seçenekleri) nasıl “sekebilirim (otomatik tamamlama)?


13

Temelde ben ubuntu terminali işlevsel olarak değiştirmek istiyorum, böylece i sekme (cmd satır satırında) tüm seçenekleri aracılığıyla döngüsü ve varsayılan olarak olduğu gibi seçenekleri listeleme?

Ben bash, ubuntu 9.04 kullanıyorum. ".Bashrc" 'de bazı olasılıklar görüyorum, ama dışarıda bu sorunu zaten çözen biri olmalı?


Tab tuşuna iki kez basarsanız tüm olası tamamlamaların bir listesini aldınız, değil mi?
vava

@vava: Genellikle varsayılan davranış olan bash'ın olası tamamlamalar komutunu açıklıyorsunuz. Soru, bu davranışın bash'ın menu-complete komutunun sağladığı davranışla nasıl değiştirileceği.
las3rjock

@ las3rjock, biliyorum, bu yüzden bir yorum bıraktım, cevap değil. Bisiklete binme modundan çok daha iyi olduğu için OP'nin bu özelliği bilmemesi mümkündür.
vava

@vava: OP olası tamamlama davranışını tanımlar ve bunu menü tamamlama davranışıyla değiştirmek istediğini belirtir.
las3rjock

@vava terminal nasıl çalıştığını biliyorum ve bu çok can sıkıcı davranışını değiştirmek istiyorum.
Daniel T. Magnusson

Yanıtlar:


16

Bu sayfadaki yorumlara göre ,

bind '"\t":menu-complete'

Gözlerinde farklı .bashrcdöngüsel sekme tamamlama imkan vermelidir.

Bkz bölüm 8.4.6 ait Bash Referans Kılavuzuna fazla bilgi için.


Teşekkürler, çok güzel bulmak! - Sadece o sayfadaki yorum seviyorum "Bash döngüsel sekme tamamlamayı desteklediğini bulmak bana yıllar aldı" - hah, süper kullanıcı kazanır!
Daniel T. Magnusson

Teşekkürler! Bu uygulandıktan sonra, eski yolu geçici olarak kullanmak için bir geçersiz kılma tuş kombinasyonu var mı? Örneğin Üst Karakter + SEKME.
Ace

0

Benim için hayat kurtarıcı bir şey, aptal bir liste göstermek yerine olasılıklar arasında bash döngüsüne sahip olmak.

Bash readlineotomatik tamamlama için kullandığından , aşağıdaki satırları~/.inputrc

Eğer şüpheniz yoksa ve iyice birkaç gün / hafta süreyle çözümü aşağıda test ettikten sonra kesme ve yapıştırma (copy yok!) Den aynı ayarları ~/.inputrciçin /etc/inputrcsistem genelinde ayarları içerir ki, sisteminizdeki tüm kullanıcılara bu kullanılabilir hale (misafir dahil).

Codez:

# mappings to have up and down arrow searching through history:
"\e[A": history-search-backward
"\e[B": history-search-forward
# mappings to have left and right arrow go left and right: 
"\e[C": forward-char
"\e[D": backward-char

# mapping to have [Tab] and [Shift]+[Tab] to cycle through all the possible completions:
"\t": menu-complete
"\e[Z": menu-complete-backward

sonra exitterminalinizi (veya macun gibi uzak terminali) açın ve tekrar açın ...

Örnekler:

  1. Ne zaman 3 dosya vardır: file1, file2ve file3ve yazın:

    e fTabTabTab

    aşağıdakiler arasında geçiş yapacaktır:

    e file1
    e file2
    e file3

    ve geri dönmek istediğinizde Shift+Tab

  2. Yazdığınızda:

    very-complicated-command with lots of command line parameters

    ve bir daha aynı komuta ihtiyacınız olduğunda şunu yazmanız yeterlidir:

    very

    ve sizin için yazacaktır:

    very-complicated-command with lots of command line parameters

Bu bash size bir ton zaman kazandıracak! ;-)

Kaynak

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.