Skip to main content

bash-completion

Wer einen gewissen Komfort bei der Steuerung von Linux via Kommandzeile vermisst, sollte sich das Paket bash-completion via yum installieren.

yum -y install bash-completion

Danach einfach ein neues Terminal öffnen, reloggen oder das Kommando „. /etc/bash_completion“ ausführen, um die neuen Features zu laden.

Im Folgenden einige Beispiele der Möglichkeiten, die einem nun offenstehen:

Als root:

service send[Tab]

dies verfollständigt den Aufruf automatisch zu „sendmail“.

Eine der Besonderheiten ist die Vervollständigung von Paketnamen beim Aufruf von yum. Aus

[root@ov ~]# yum -y install never[Tab]

wird automagisch

[root@ov ~]# yum install neverball.i386

Allerdings kommt es hierbei zu einer kurzen Verzögerung der Ausgabe, deshalb nicht gleich auf der Tab-Taste herumhämmern.

drückt man 2x die Tabtaste wird eine Liste von möglichen Ergänzungen angezeigt:

 [root@ov ~]# man send[Tab] send sendfile sendiso sendmail.sendmail sendsms send_to_keyboard send_v2trap send_easy_trap sendfile64 sendmail sendmsg sendto send_trap_vars

das funktioniert auch mit svn:

[magenbrot@ov:~]$ svn [Tab]
?         blame     cleanup   cp        diff      import    log       move      pe        pl        propedit  ps        rename    st        switch    
add       cat       co        del       export    info      ls        mv        pedit     plist     propget   pset      resolved  stat      unlock    
ann       checkout  commit    delete    h         list      merge     pd        pg        praise    proplist  remove    revert    status    up        
annotate  ci        copy      di        help      lock      mkdir     pdel      pget      propdel   propset   ren       rm        sw        update    

make:

[magenbrot@ov:/usr/src/qc-usb-messenger-1.7]$ make [Tab]
make                 makedepend           make_driver_db_lpr   makeindex            makekdewidgets       makempx              makeobj              makestrs
makedb               make_driver_db_cups  makeg                makeinfo             makemap              makempy              makerandom           

modprobe:

[root@ov ~]# modprobe ipt_[Tab]
ipt_addrtype    ipt_CLUSTERIP   ipt_ECN         ipt_MASQUERADE  ipt_recent      ipt_REJECT      ipt_TTL         
ipt_ah          ipt_ecn         ipt_LOG         ipt_NETMAP      ipt_REDIRECT    ipt_ttl         ipt_ULOG        

Vervollständigung der Hostnamen etwa bei ssh:

ssh www.[Tab]
www.bla.de  www.fasel.de www.xxx.de

Vervollständigung der Directories beim Kopieren mit scp (wieder mit kleiner Verzögerung nach Tab):

[magenbrot@ov:~]$ scp liste.txt magenbrot@magenbrot.net:/home/magenbrot/
/home/magenbrot/bin/       /home/magenbrot/firewall/     /home/magenbrot/mail/      /home/magenbrot/srv/

Anzeige der unterstützen Parameter bei einem Programm:

[magenbrot@ov:~]$ less --
---                    --force                --IGNORE-CASE          --max-back-scroll=     --QUIT-AT-EOF          --squeeze-blank-lines  --version
--auto-buffers         --help                 --jump-target=         --max-forw-scroll=     --quit-if-one-screen   --status-column        --window=
--buffers=             --hilite-search        --lesskey-file=        --no-init              --quotes=              --tabs=                
--chop-long-lines      --HILITE-SEARCH        --LINE-NUMBERS         --no-keypad            --RAW-CONTROL-CHARS    --tag=                 
--clear-screen         --hilite-unread        --log-file=            --no-lessopen          --search-skip-screen   --tag-file=            
--color=               --HILITE-UNREAD        --LOG-FILE=            --pattern=             --shift=               --tilde                
--dumb                 --ignore-case          --LONG-PROMPT          --prompt=              --SILENT               --UNDERLINE-SPECIAL