Wann Dir wéi ech sidd, sidd Dir e Liebhaber vu Bash an aus Grënn vu Gewunnecht oder Laun, hutt Dir keng Loscht méi ze benotzen zsch y oh meng zsh méi Verbesserung fir Ären Terminal ze ginn. Gutt, a gudder Zäit weist dësen Tutorial Iech wéi Dir Schrëtt fir Schrëtt konfiguréiert Powerline-Shell-Master a gitt him e schéint Optrëtt VIRSCHLOEN vun Ärer basch Schuel. Kuerz, dësen Tutorial mécht Iech e Meeschter vun der Bash Prompt Customization
Index
Wat ass Bash?
Bash (Bourne erëm Schuel) ass e Computerprogramm, deem seng Funktioun d'Befehle interpretéiert, an eng Konsol Programméiersprooch. Et baséiert op der Unix Shell an ass POSIX konform.
Wat ass prompt?
De Charakter oder de Set vun Zeechen, déi op enger Kommandozeil ugewisen ginn ass genannt Prompt fir unzeginn datt et op Kommandoen waart. Dëst kann ofhängeg vun der Schuel variéieren an ass normalerweis konfiguréierbar.
Powerline-Shell-Master eroflueden
Powerline-Shell-Master ass e gratis Projet a ka fonnt ginn https://github.com/banga/powerline-shell
Mir ginn op dës Route an lueden se erof wéi am Zip Format.
Mir kënnen et och vun der Konsole mat dem folgendem Kommando maachen:
git clone https://github.com/banga/powerline-shell.git
PowerLine-Shell-Master konfiguréieren
Wann de Projet erofgelueden ass, packen mir et aus:
$ cd / Downloads $ unzip powerline-shell-master.zip $ cd powerline-shell-master
Mir änneren d'Konfiguratiounsdatei config.py.dist fir d'Basisthema ze lueden
$ nano config.py.dist An der leschter Zeil vun der Datei ännert d'Linn TEMA = 'Standard' op TEMA = 'Basis' Exit a späichert Ännerungen
Mir exekutéieren install.py Fir déi nei Konfiguratiounsännerungen ze lueden:
$ Python install.py Et sollt déi folgend Ausgab zréckginn: Erstellt perséinlech config.py fir Är Customisatiounen powerline-shell.py erfollegräich gespäichert Wann d'Ausféierung erfollegräich war, wäerte mir dräi weider Dateie bemierken: config.pyc, config.py an powerline-shell.py
Elo musse mir nëmmen den Ordner lokaliséieren wou et sollt goen oder sollt fir d'Bequemlechkeet an Uerdnung sinn, mir réckelen den Dossier op / Heem / Benotzer ëmbenennen et als .power-line-shell-Master, de Punkt virum Numm ass et ze verstoppen.
Wa mir nach ëmmer am Verzeechnes sinn, gi mir zréck: $ cd .. $ mv Powerline-Shell-Master $ HOME / .Powerline-Shell-Master
Opstelle vu Bash Prompt
Fir de Bash Prompt ze konfiguréieren ass relativ einfach well an der Powerline-Shell Handbuch ass et déi richteg Konfiguratioun fir Bash, awer awer et ass e bësse limitéiert, also wäert ech d'.bashrc Konfiguratioun fir Iech verloossen fir se just an Är Datei ze pechen. bashrc wéi et ass, ersetzt déi virdrun Konfiguratioun.
Wa mir nach ëmmer um Downloadwee sinn, gi mir an de perséinlechen Dossier $ cd ~ Mir maachen eng Backupskopie vun eiser .bashrc Datei $ cp .bashrc .bashrc_old Mir öffnen d'.bashrc Datei mat engem Texteditor fir se z'änneren $ nano .bashrc Wa mir op sinn, läsche mir säin Inhalt an ersetzen et mat folgendem: # ~ / .bashrc: ausgefouert vu bash (1) fir net-Login Shells. # gesinn / usr / deelen / doc / bash / Beispiller / Start-Dateien (am Package bash-doc) # fir Beispiller # Wann net interaktiv leeft, maacht näischt Fall $ - an * i *) ;; *) zréckginn ;; esac # setzt keng duplizéiert Zeilen oder Zeilen un, déi mat Raum an der Geschicht ufänken. # Kuckt bash (1) fir méi Optiounen HISTCONTROL = ignoréiert béid # an d'Geschichtsdatei bäifügen, iwwerschreiwe se net shopt -s histappend # fir d'Geschichtlängt ze setzen kuckt HISTSIZE an HISTFILESIZE zu bash (1) HISTSIZE = 1000 HISTFILESIZE = 2000 # check d'Fënstergréisst no all Kommando an, wann néideg, # aktualiséieren d'Wäerter vu Linnen a KOLONN. shopt -s checkwinsize # Wa gesat, wäert d'Muster "**" an engem Pathname Expansiounskontext # mat all Dateie mat null oder méi Verzeechnesser an Ënnerverzeechner passen. #shopt -s Globstar # maacht manner méi frëndlech fir Net-Text Input Dateien, kuckt lesspipe (1) [-x / usr / bin / lesspipe] && eval "$ (SHELL = / bin / sh lesspipe)" # Set variabel z'identifizéieren d'Chroot an där Dir schafft (an der Ufro ënnendrënner benotzt) wann [-z "$ {debian_chroot: -}"] && [-r / etc / debian_chroot]; da debian_chroot = $ (cat / etc / debian_chroot) fi # setzt e flotte Prompt (net Faarf, ausser mir wëssen datt mir "Faarf" wëllen "Fall" $ TERM "an xterm-Faarf | * -256color) color_prompt = jo ;; esac # Kommentar fir e faarwege Prompt, wann den Terminal d'Méiglechkeet huet; ausgeschalt # par défaut fir de Benotzer net ofzelenken: de Fokus an enger Terminalfenster # sollt op d'Ausgab vu Kommandoen, net op der Prompt # force_color_prompt = jo wann [-n "$ force_color_prompt"]; da wann [-x / usr / bin / tput] && tput setaf 1> & / dev / null; dann # Mir hu Faarfënnerstëtzung; dovun ausgoen datt et konform mam Ecma-48 # (ISO / IEC-6429) ass. (Mangel u sou Ënnerstëtzung ass extrem seelen, an esou e Fall géif éischter éischter Setf ënnerstëtzen wéi Setaf.) Color_prompt = jo soss color_prompt = fi fi #config Basisprompt #if ["$ color_prompt" = jo]; dann # PS1 = '$ {debian_chroot: + ($ debian_chroot)} \ [\ 033 [01; 32m \] \ u @ \ h \ [\ 033 [00m \]: \ [\ 033 [01; 34m \] \ w \ [\ 033 [00m \] \ $ '#else # PS1 =' $ {debian_chroot: + ($ debian_chroot)} \ u @ \ h: \ w \ $ '#fi # unset color_prompt force_color_prompt # Wann dëst eng xterm setzt den Titel op de Benotzer @ Host: dir #case "$ TERM" an # xterm * | rxvt *) # PS1 = "\ [\ e] 0; $ {debian_chroot: + ($ debian_chroot)} \ u @ \ h : \ w \ a \] $ PS1 "# ;; # *) # ;; #esac # aktivéiert d'Faarfënnerstëtzung vun ls an füügt och praktesch Aliasen bäi wann [-x / usr / bin / dircolors]; da test -r ~ / .dircolors && eval "$ (dircolors -b ~ / .dircolors)" || eval "$ (dircolors -b)" alias ls = 'ls --color = auto' #alias dir = 'dir --color = auto' #alias vdir = 'vdir --color = auto' alias grep = 'grep - -color = auto 'alias fgrep =' fgrep -color = auto 'alias egrep =' egrep -color = auto 'fi # faarweg GCC Warnungen a Feeler # Export GCC_COLORS =' Feeler = 01; 31: Warnung = 01; 35 : note = 01; 36: caret = 01; 32: locus = 01: quote = 01 '# e puer méi ls aliases alias ll =' ls -alF 'alias la =' ls -A 'alias l =' ls -CF ' ## Alias update den operativen System alias system-update = "sudo apt-get update && sudo apt-get upgrade" # Füügt en "Alarmer" Alias derbäi fir laang lafend Kommandoen. Benotzt esou: # Schlof 10; alarm alias alert = 'notify-send --urgency = low -i "$ ([$? = 0] && Echo Terminal || Echo Feeler) "" $ (Geschicht | Schwanz -n1 | sed -e '\' 's / ^ \ s * [0-9] \ + \ s * //; s / [; & |] \ s * Alarm $ // '\' ') "' # Alias Definitiounen. # Dir wëllt all Är Ergänzunge an eng separat Datei wéi # ~ / .bash_aliases setzen, anstatt se direkt hei bäizefügen. # Kuckt / usr / deelt / doc / bash-doc / Beispiller am bash-doc Package. wann [-f ~ / .bash_aliases]; dann. ~ / .bash_aliases fi #grep Kommando Faarf Aktivéierung GREP_OPTIONS = - Faarf # aktivéiert programméierbar Ofschlossfeatures (Dir braucht net # dëst z'aktivéieren, wann et schonn aktivéiert ass /etc/bash.bashrc an / etc / profile # sources / etc / bash.bashrc). wann! shopt -oq posix; da wann [-f / usr / share / bash-fäerdeg / bash_completion]; dann. / usr / deelen / bash-fäerdeg / bash_completion elif [-f / etc / bash_completion]; dann. / etc / bash_completion fi fi # Konfiguratioun Powerline-Shell-Master Funktioun _update_ps1 () {PS1 = "$ ($ HOME / .powerline-shell-master / powerline-shell.py $?
Um Enn vun der Konfiguratioun, wann Dir en Terminal opmaacht, da gëtt et folgend ugewisen.
Astellung vun der Wuerzelprompt
Wann Dir d'Alarm liest an Dir hutt Wichtegkeet geholl, loosst eis viru a konfiguréiert de Root-Propt, dëst wäert net laang daueren, et kopéiert just d'Datei .bashrc virdru geännert a schéckt se op de Wee / root.
Bannent dem Wee vun eisem perséinlechen Dossier $ sudo cp -f .bashrc /root/.bashrc [sudo] Passwuert fir [Benotzer]: Wann ech dat maachen, kontrolléiere mir datt /root / .bashrc Datei déiselwecht Konfiguratioun huet $ sudo cat /root/.bashrc
Merci fir dëst Tutorial ze kucken, a wann Dir ee vun deenen ass, déi et zu gudder Zäit ëmsetzen, sinn ech frou datt et sou ass, well dëst Handbuch oder Tutorial gouf erstallt mam Zweck nëtzlech ze sinn. Ech weess datt fir vill dëst net sou kontrovers ass, awer heiansdo ass et langweileg fir mat engem onattraktiven Terminal ze schaffen, hehe Matière vum Geschmaach.
Hallo!!
Ech hunn Äre Post wierklech gär, ech hunn et am neie Mint 18.1 getest a beim Ausgruewe war d'Resultat net datselwecht ...
Et schéngt, datt ech net déi entspriechend Systemschrëften hunn, fir d'Prompt mat de Pfeile korrekt ze visualiséieren, well d'Faarwe korrekt ugewisen ginn.
Ech weess net ob een aneren domat geschitt awer ech géif gären wëssen ob et eng Léisung ass, oder eng Download Säit vun de richtege Quelle fir datt se gutt opdaucht.
Merci !!
Hallo Frënd, merci fir Kommentéieren, wann ech vergiess hunn ze soen datt et déi richteg Quelle brauch fir d'Erscheinung ze verbesseren. Dës Schrëfte si Powerline Schrëften an Dir fannt se an https://github.com/powerline/fonts
Ech hu missen an den Terminalpräferenzen änneren, d'Optioun vun 'Encodings' op 'UTF-8 Unicode' an och geléist.
Wann ech tatsächlech och mat der 'utf-8 unicode' Kodéierung schaffen, Merci fir de Kommentar 😀
Ohm, et gesäit net nëmme gutt aus wann et d'Liesen net méi einfach mécht, gudde Tuto.
Moien, ganz gudde Post Merci, och wann et mir geschitt ass, datt all d'Faarwen / Segmenter vun der Bar a gro erschéngen, an eng Prompt vun dësem Typ xxxxxx ~ $ wat muss ech maachen fir dat ze fixéieren? Villmools Merci, exzellenten Bäitrag, Gréiss
Ech hu probéiert an d'Konsole funktionnéiert awer ech war aus der Prompt erausgaang, Gottseidank et war näischt Eeschtes an ech konnt se flécken.