Kirjoittaja Aihe: Alkukirjainten perusteella arvaileva bash-history komentotulkkiin?  (Luettu 2334 kertaa)

Ville Pöntinen

  • Käyttäjä
  • Viestejä: 2078
    • Profiili
En tiedä mistä sormeni muistavat seuraavanlaisen toiminnon (jokin kauan sitten kokeilemani linux, DOS?), mutta saako sitä bash:iin tai johonkin muuhun tulkkiin vai olisiko se olemassa jossain?

Eli kyse on historyn käyttämisestä arvaten. Jos vaikka kirjoitan päätteeseen "su" ja painan nuolta ylös, ehdottaa bash viimeksi kirjoittamaani käskyä. Haluaisin sen ehdottavan edellistä su-alkuista komentoani ja toisella painalluksella sitä edellistä jne.

DtW

  • Vieras
Eli kyse on historyn käyttämisestä arvaten. Jos vaikka kirjoitan päätteeseen "su" ja painan nuolta ylös, ehdottaa bash viimeksi kirjoittamaani käskyä. Haluaisin sen ehdottavan edellistä su-alkuista komentoani ja toisella painalluksella sitä edellistä jne.

Linuxin komentotulkit käyttävät readline-kirjastoa komentorivin muokkauksessa. Komennolla ”man readline” saa apua siihen liittyvissä toiminnoissa. Käsittääkseni täsmälleen kuvaamasi laista toimintoa ei ole, mutta sen sijaan löytyy paljon monipuolisempi tapa etsiä komentohistoriasta. Paina Ctrl(r) ja kirjoita tekstiä. Riville tulostuu aiempi komentorivi, josta löytyy kirjoittamasi merkkijono. Paina uudelleen Ctrl(r) ja saat sitä edellisen komentorivin, johon merkkijono sopii. Itse käytän komentoriviä vi-tilassa, ja siinä voi edellisen lisäksi myös komennoilla / ja ? etsiä komentorivihistoriasta. Oletuksena komentorivi on yleensä emacs-tilassa.

Ville Pöntinen

  • Käyttäjä
  • Viestejä: 2078
    • Profiili

Hihii!

Kiitos  ;D

linuxoija

  • Käyttäjä
  • Viestejä: 6
    • Profiili
Vanha aloitusviesti, mutta tuli ajankohtaiseksi minulla. Kyllä tämmöinen aloittajan kuvaama toiminto on linuxissa mahdollinen. Minulla oli se käytössä Debianissa. Siirryin juuri Ubuntuun, mutta samalla .bashrc -tiedostolla en saa tuota toimimaan. Osaisiko joku avittaa, puuttuuko minulta ehkä joku paketti tms?

Tässä on olennaisia .bashrc -rivejä liittyen tuohon toiminnallisuuteen:

Koodia: [Valitse]
#
# History boost up:
#
shopt -s histappend
PROMPT_COMMAND='history -a'
source /etc/bash_completion

Miten siis onnistuisi : :-\