1. Vykonajte posledný príkaz pomocou !!
Názov hovorí za všetko, stačí zadať do terminálu nasledujúce ...
!!
… Opätovné vykonanie posledného zadaného príkazu. Tento trik je veľmi užitočný, keď zabudneme vstúpiť sudo na začiatku. V takom prípade by ste museli zadať:
sudo !!
Ak chcete objaviť zložitejšie spôsoby, ako z tohto triku vyťažiť maximum, odporúčam prečítať tento starý príspevok.
2. Vykonajte posledný príkaz, ale opravte chybu pri písaní
Tento trik je skutočne užitočný, keď zadáme príkaz jednoduchým preklepom. Napríklad, ak spustíme:
zahodil "desdelinuxz"
Môžete to opraviť zadaním nasledujúcich údajov:
^z
3. Vyvolajte textový editor a zadajte dlhý príkaz
Niekedy je potrebné do terminálu zadávať nekonečné príkazy. V takom prípade môže byť užitočná pomoc jednoduchého textového editora, napríklad nano alebo emacs.
Editor otvoríte iba stlačením Ctrl + x + e v termináli. Text, ktorý ste doteraz zadali, sa po otvorení skopíruje do textového editora.
Pokiaľ ide o časť, použije sa editor uvedený v premennej $ EDITOR. Ak chcete zmeniť túto konfiguráciu, je možné vykonať ...
export EDITOR = nano
... Výmena nano za preferovaný editor.
4. Vykonajte príkaz bez uloženia do histórie
Skutočný hacker nemôže tento trik ignorovať. Ako každý vie, bash ukladá históriu vykonaných príkazov, ku ktorej je veľmi ľahký prístup pomocou šípok na klávesnici alebo Ctrl + R (vykonať a spätné vyhľadávanie v histórii).
V takom prípade musíte urobiť miesto, aby sa zadaný príkaz neuložil do histórie:
príkaz
5. Automaticky vložte posledný parameter príkazu
Predpokladajme, že príkaz vykonaný skôr bol
cp file.txt / var / www / wp-content / uploads / 2009/03 /
Pre prístup do predmetného adresára môžete zadať príkaz cd nasleduje Alt +. o Esc +. :
cd 'ALT +.'
Toto je len skratkový spôsob vstupu:
cd / var / www / wp-content / uploads / 2009/03 /
6. Vykonajte príkaz v stanovenom čase
Áno, áno, na to to existuje cron. Niekedy však chceme spustiť príkaz na spustenie v určitom čase, ale iba raz.
Predpokladajme, že chceme vykonať príkaz ls -l o polnoci. V takom prípade to musíme vykonať nasledujúcim spôsobom:
ozvena "ls -l" | o polnoci
7. Získajte externú adresu IP
Vďaka službe poskytovanej spoločnosťou http://ifconfig.me/ Priamo z terminálu je možné zistiť rôzne informácie o vašom internetovom pripojení:
curl ifconfig.me/ip // IP adresa curl ifconfig.me/host // Vzdialený server curl ifconfig.me/ua // User Agent curl ifconfig.me/port // Port
8. Naučte sa, ako používať Ctrl + u a Ctrl + y
Koľkokrát ste začali písať príkaz a spomenuli ste si na to skôr, ako bolo potrebné urobiť niečo iné? Je možné vykonať určitý druh strihu a vloženia, takže neskôr je jednoduchšie znova zadať príkaz, ktorý zostal na polovici.
Predpokladajme, že ste začali písať ...
cd / home / user
a spomenuli ste si na to skôr, ako ste museli skontrolovať niečo v aktuálnom adresári. V takom prípade stlačte Ctrl + U (Bolo by to niečo ako „strih“).
Najprv zadajte príkaz, ktorý bolo potrebné spustiť. Predpokladajme ...
ls -l
... a potom stlačte Ctrl + y (Funguje to ako „pasta“).
9. Terminál ľahko vyčistite
s Ctrl + l terminál je možné vyčistiť behom okamihu.
10. Prejdite do adresára, spustite príkaz a vráťte sa do aktuálneho adresára
Tento trik je potešením. Ak chcete vykonať rad príkazov bez opustenia aktuálneho adresára, zoskupte ich do zátvoriek. Ako takmer každý vie, na vykonanie série príkazov je potrebné ich zreťaziť pomocou &&. Pomocou týchto konceptov môžeme vykonať niečo ako nasledovné:
(cd / tmp && ls)
Výsledkom tohto príkazu (všimnite si zátvorky) bude zoznam súborov a adresárov v priečinku / Tmp. Všetko bez opustenia nášho aktuálneho adresára. Klenot!
Yapa. Uveďte zoznam najpoužívanejších príkazov
Vidieť ich najpoužívanejšie príkazy stačí vykonať nasledovné:
história | awk '{a [$ 2] ++} END {for (i in a) {print a [i] "" i}}' | triediť -rn | hlava
V mojom prípade zvíťazili:
450 yaourt 415 sudo 132 git 99 cd 70 leafpad 70 killall 68 ls 52 pacman 50 xrandr 45 top
Terminálovým fanúšikom, ako je tento server, odporúčam navštíviť príkazový riadok. Prečo tiež nie, neprestávajte sa pozerať na Archív z nášho blogu.
Použil som jeden, ktorý vo svojom inputrc vynechal veľké písmená, pretože úprimne veľa súborov, ktoré začali takto, by do mňa vkĺzlo.
Myslím, že jedným z najdôležitejších je príkaz histórie, v ktorom vráti očíslovaný zoznam
príkazov, ktoré ste použili, a ak chcete použiť niektorý z nich, použite nasledujúci riadok
! 22
ktorý vykoná príkaz, ktorý je vo vašej histórii na čísle 22 😀
Vyhľadať príkaz s automatickým dokončením je
ctrl + r
Tiež vždy používam Ctrl + r na zopakovanie posledného príkazu; akonáhle sa objaví posledný, môžete sa posúvať späť v histórii stlačením Hore Pag (šípka hore).
Zdravím.
Dobrý článok. Ďakujeme za zdieľanie týchto tipov.
Chcem zdieľať ten, ktorý používam každý deň a ktorý je „fg“, ktorý umožňuje otvárať aplikácie, ktoré ste zastavili skôr, pomocou „Ctrl + z“.
A s 'bg' ich pošlete na pozadie 🙂
Pozri sa na seba ... dobrý trik! Ďakujeme za zdieľanie.
Objať! Pavla.
Príspevok je vynikajúci, vždy vám pripomína veci, ktoré ste vedeli a nakoniec ste zabudli, ale ktoré sú skutočne užitočné.
Cheat na termináli je vždy vítaný.
Neuveriteľne som nevedel, že pridanie medzery do príkazu bolo z histórie vynechané.
Ďakujem pekne, pozdravujem !!
ak chcete použiť históriu automatického dokončovania filtrovania, pridajte súbor $ HOME / .inputrc
"\ E [5 ~": history-search-backward
"\ E [6 ~": history-search-forward
a napríklad ste v určitom okamihu použili:
$ cd / jedna / cesta / dlhšie / ako / hovno
a teraz ho chcete znova použiť, musíte urobiť:
$ cd
a potom stlačte klávesy „Page Up“ alebo „Page Down“ na prechádzanie všetkými príkazmi v histórii, ktoré začínali na „cd“.
ALEBO…. Bez toho, aby ste niečo upravovali, stlačte Ctrl + R a potom cd (ak chcete niečo vyhľadať pomocou „cd“) a opakovaným stláčaním Ctrl + R uvidíte všetky príkazy, ktoré to obsahujú, kým sa nedostanete k požadovanému. Je zrejmé, že ak ide o bezprostredne predchádzajúci, jeden dostanete.
Veľmi dobre!
Vlastne ls / tmp by malo stačiť na vypísanie adresára bez opustenia aktuálneho.
Príkaz môžete zreťaziť aj pomocou znaku „;“ ako v príklade č. 10 by to bolo takto:
(cd / tmp; ls)
pozdravy
On „;“ Funguje to inak ako „&&“ (a), keď urobíme príkaz-1 && príkaz-2, druhý príkaz sa vykoná, iba ak je výstup prvého „0“, to znamená bez chyby. V prípade bodkočiarky sa vykoná druhý príkaz bez ohľadu na výstup prvého. Pre rozšírenie je tu operátor «||» (alebo), v tomto prípade sa druhý príkaz vykoná, iba ak prvý vrhne na výstup chybu. S pozdravom.
Aby každý riadok, ktorý si pamätá históriu, mal dátum a čas, existuje premenná prostredia v ~ .bashrc bežného používateľa alebo root.
# nano .bashrc
exportovať HISTTIMEFORMAT = »% F% T»
# história
492 2014-09-02 14:25:57 revdep-rebuild -i -v
493 2014-09-02 14:31:14 eclean-dist -d
494 2014-09-02 14:31:23 localepurge -v
495 2014-09-02 14:31:29 atď
496 2014-09-02 14:31:54 emerge –depclean –pretend
497 aktualizované 2014 09:02:14 aktualizovanéb
Existuje viac možností, ktoré zodpovedajú množstvu riadkov, ktoré šetrí, testujem ich.
Veľmi dobrý príspevok. Naozaj veľmi užitočné. Trik číslo 4, ktorým je vykonanie príkazu bez toho, aby bol uložený v histórii, pre mňa fungoval iba v Ubuntu, nie v Debiane alebo Centose.
Fungovalo mi to na raspbian a nie na arch.
Merveilleux!!
Dobrý deň,
čo vložiť medzeru pred vykonaním príkazu, aby nebol zaregistrovaný v histórii, pretože nefunguje ...
[user @ host /] $ ls -l
Celkom 104
dr-xr-xr-x. 2 koreňový koreň 4096 21. augusta 03:55 bin
dr-xr-xr-x. 5 root root 3072 20. augusta 17:26 boot
drwxr-xr-x. 2 koreňový koreň 4096 9. decembra 2013 cgroup
[user @ host /] $ história
1024 ls
1025 ls
1026 história
1027 ls -l
1028 história
zaujímavý článok ..
Pozdrav
Prepáčte, že ste neprečítali všetky príspevky,
Test sa tiež robí v centoch.
Dobré s Ctrl + U a Ctrl + Y.
V mojom systéme pracoval zoznam najpoužívanejších príkazov zmenou premennej na 5 dolárov.
Príklad výstupu:
1122 sudo
362 ls
279 jasné
214 XNUMX cd
142 kop
141 rokov
130 vnstat
122 mv
Piatok 112
História 112
Je to preto, že v mojom súbore .bashrc mám nasledujúci riadok:
# Zobraziť dátum príkazu histórie
export HISTTIMEFORMAT = '% F% T:'
Som si takmer istý, že mnohí tu používajú niekoľko terminálov súčasne.
Teraz neviem, či vám mám povedať, že ide o terminálový trik, ale keďže mám zvyčajne veľa okien alebo používam obrazovku na otvorenie viacerých terminálov, umožňuje to akýkoľvek príkaz zadaný v jednom z týchto terminálov, pretože sa prejaví vo všetkých .
Toto sa nachádza v súbore .bashrc:
HISTSIZE = 90000
HISTFILESIZE = $ HISTSIZE
HISTCONTROL = ignorespace: ignoredups
história () {
_bash_history_sync
zabudovaná história „$ @“
}
_bash_history_sync () {
zabudovaná história -a # 1
HISTFILESIZE = $ HISTSIZE # 2
vstavaná história -c # 3
vstavaná história -r # 4
}
PROMPT_COMMAND = _bash_history_sync
Veľmi dobrý príspevok! Ďakujem za odovzdanie.
Objať! Pavla.
Gratulujem k článku.
Veľmi praktické a naučil som sa niekoľko príkazov.
Aj keď som už v týchto veciach trochu „skúsený“, tieto triky sa vždy ocenia, takže ... za kmeň trikov !!!
super, ďakujem za triky, sú naozaj užitočné 😀
Cesty konzoly sú nevyspytateľné 😉
Trik stlačenia klávesov control + u a control + y nezávisí od shellu, ale od konfigurácie, ktorú majú tty. Dodnes sú v systéme Linux päťdesiatky veľmi zložité entity, v skutočnosti som skúmal ich fungovanie a môžem ubezpečiť, že majú oveľa viac vstupov a výstupov, ako sa zdá. Tty majú niekoľko riadiacich znakov, ktoré menia ich stav, napríklad sa mi niekedy stalo, že chytím binárny súbor a po tom, čo sa na obrazovke objaví všetok „odpad“, je výzva zvláštna alebo s iným kódovanie. Je to tak preto, lebo v náhodnom súbore je vysoká pravdepodobnosť stretnutia s tty riadiacimi znakmi.
Napríklad to spustite v prostredí shell:
tlač '33c'
Týmto sa vymaže obrazovka (akoby sa vám to podarilo).
Ďalšie kombinácie, napríklad control + L na vyčistenie obrazovky, pochádzajú zo samotného použitého shellu, klasické mušle / bin / sh túto funkciu zvyčajne neprinášajú.
Okrem toho dnes existuje veľa zložitých možností na prácu so súbormi a zásuvkami v systéme Linux. Napríklad, ak otvoríte tty zariadenie pomocou open () v režime AIO (asynchrónny vstup / výstup), proces prijme SIGIO zakaždým, keď sú vo vstupnej vyrovnávacej pamäti k dispozícii údaje.
Ak napríklad bash funguje jednoducho čítaním riadkov a vykonávaním príkazov (ako to robí pri vykonávaní skriptu), po stlačení klávesov control + L by sa táto sekvencia znakov jednoducho zahrnula ako súčasť príkazov, ale keďže bash má kontrolu nad vyrovnávacou pamäťou vstup to dokáže zistiť.
Napríklad niekedy pri programovaní som použil fcntl na získanie neblokujúceho vstupného bufferu, ktorý som použil aj pri knižniciach ncurses (pred spustením ncurses v programe manipulujte s ovládacím prvkom tty).
Saludos!
Pre tých, ktorí s medzerou na začiatku nepracovali a možno ju pridať do poznámky, existuje premenná s názvom HISTIGNORE, kde je znak, ktorý je pridaný pred príkazom, nakonfigurovaný tak, aby bol v histórii ignorovaný.
V niektorých inštaláciách táto premenná nepochádza z
Zdravím a dobrý príspevok! priamo do obľúbených!
Všimnite si, že v komentároch som videl aj niekoľko zaujímavých vecí .. !!
Všetky naozaj veľmi užitočné. Ďakujem.