Říkají, že obrázek má hodnotu tisíce slov, proto vám předtím, než vám něco vysvětlím, ukážu, jaký je výsledek příkazu, který uvedu později:
Všimněte si, jak v pravém horním rohu vidíme den v týdnu (ne, neděle), měsíc (prosinec), den (22) a také hodinu, minutu, sekundu a rok.
Je to něco, co se aktualizuje v reálném čase, to znamená každou sekundu, kdy se informace aktualizují, a vždy to bude v pravém horním rohu terminálu.
To je něco užitečného, protože můžeme upravovat soubor pomocí nano nebo vi, můžeme instalovat jakýkoli typ služby nebo spravovat cokoli a nebudeme muset zastavit to, co děláme, spustit datum v terminálu, abychom věděli datum nebo čas, S tímto tipem, který vám ukážu, budeme mít vždy na paměti.
Abychom toho dosáhli v terminálu, položme následující:
while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-29));date;tput rc;done &
To jako takové není jednoduchý příkaz nebo instrukce, ale spíše jejich sjednocení ... no tak, mohl by to být i skript. Vysvětlovat to je trochu složité, nicméně se budu snažit 🙂
- zatímco spíte 1; dělat : To znamená, že každou sekundu bude provedeno následující
- tput sc : Znamená to, že aktuální poloha bude uložena, to znamená, že bude uložena pozice toho, co přijde dál, nebude nutné ji jednou specifikovat.
- vložit šálek 0$ (($ (tput cols) -29)) : Může se to zdát komplikované, ale není to tak těžké. V zásadě to říká pozice, tedy pravý horní roh. Parametr cup určuje vertikální prostor, který bude existovat, protože dáme 0, takže to znamená „těsně nad, nahoře“. Jakmile je svislá poloha definována, můžeme vidět vodorovnou polohu, o kterou se postarají ostatní parametry, které jednoduše řečeno ... spočítá existující sloupce a zajistí, aby byla přímo na pravém okraji. Pokud chcete, změňte číslo 29 pro ostatní a všimnete si rozdílu.
- datum : No, je to jednoduché, datum nám ukazuje informace, které vidíme ... den, měsíc, hodina atd.
- tput rc : Jsou tput sc uložíme pozici, nyní s tput rc ji obnovíme.
- hotový : Zde dokončujeme vše, čím jsme začali.
Jak vidíte, terminál je bezpochyby úžasný prostor, pokud příkaz nedělá přesně to, co chceme ... můžeme se připojit k několika z nich a dosáhnout toho, co chceme. Podívejte se na každý příkaz jako nástroj, nástroj (kladivo) z nás nemůže udělat krásnou sochu, ale spojením tohoto nástroje (kladivo) s ostatními (dřevo a dláto) můžeme dosáhnout vysněného výsledku 🙂
Mimochodem ... pokud chcete, aby se to vždy zobrazovalo v terminálu, aniž byste jej museli spouštět pokaždé, když otevřete konzolu, musíte ji umístit do .bashrc, tedy:
echo "while sleep 1;do tput sc;tput cup 0 \$((\$(tput cols)-29));date;tput rc;done &" >> $HOME/.bashrc
Pak pokud jej chcete odstranit, spusťte následující:
sed -i "s/while sleep 1/#while sleep 1/" $HOME/.bashrc
No, nic víc na doplnění, doufám, že to pro vás bylo užitečné
pozdravy
silný
echo "while sleep 1; do tput sc; tput cup 0 \ $ ((\ $ (tput cols) -29)); date; tput rc; done &" >> $ HOME / .bashrc
Díky, ale nefunguje to pro mě ... Ani v Konsole, ani v Yakuake jsem neudělal všechno tak, jak je to v příspěvku. 🙁
Omlouvám se ... byla to moje chyba ... teď, když jsem restartoval IT WORKS !!!
Bylo mi divné, že to nefungovalo, protože zatímco… date a tput jsou příkazy z balíčku Bash 😀
Nevím ... stalo se něco zvláštního ... vložte terminál:
echo "while sleep 1; do tput sc; tput cup 0 $ (($ (tput cols) -29)); date; tput rc; done &" >> $ HOME / .bashrc
A výsledek byl:
bash: /home/ghermain/.bashrc: řádek 115: syntaktická chyba poblíž neočekávaného prvku `` do ''
bash: /home/ghermain/.bashrc: line 115: `PS1 = '$ {debian_chroot: + ($ debian_chroot)} [33 [01; 34 m] u [33 [01; 32 m] @ [33 [01; 32 m] h [33 [00m]: [33 [01; 34m] w [33 [00m] $ 'while sleep 1; do tput sc; tput cup 0 64; date; tput rc; done &'
Pak jsem přímo zkopíroval příkazy, které zadáváte v .bashrc na konci, a dostanu několik řádků s datem a časem.
Odstraňte všechny řádky, které jste vložili do souboru .bashrc k datu, a ručně vložte řádek znovu bez použití ozvěny, že pokud nedojde k chybě
Velmi zajímavé!
Děkujeme za přečtení 🙂
Dlouho jsem hledal způsoby, jak „vyzdobit“ chladný, ale efektivní terminál, a tento příkaz je velmi dobrý, ne tak barokní jako jiná řešení, ale když zadám dlouhý příkaz, dojde k určitému zmatku. Příkaz sní datum a potom se zdá, že datum sníží příkaz. Ví někdo, jestli existuje způsob, jak se výzva zobrazí ve výchozím nastavení o řádek níže?
Každopádně, děkuji!
Vynikající tip 🙂
Díky brácho 😀
Díky za tip přítele, funguje to správně. Pozdravy.
Děkujeme, že jste si nás přečetli 🙂
Skvělé 😀
Nebo můžete vytvořit alias a podle potřeby jej použít 😀
Zajímavé, zkusím to později
Velmi dobrý
Můžete napsat příspěvek vysvětlující, jak nainstalovat zsh v Debianu / Ubuntu / Mint / Elementary a jak konfigurovat témata?
Uff, nikdy jsem nepoužil zsh, promiň 🙁
KZKG ^ Gaara, když uděláte příkaz, který dává chybu, protože se domnívám, že se pokouší rozpoznat $, které nemají žádnou hodnotu, takže je neinterpretuje, jejich \ je opraveno.
echo "while sleep 1;do tput sc;tput cup 0 \$((\$(tput cols)-29));date;tput rc;done &" >> $HOME/.bashrc
Myslím, že tak nebude žádný problém, napravte ho, než někomu udělám chybu. Dobrý příspěvek, použiji ho. Pozdravy.
Uff, má chyba 😀
Už to opravím v příspěvku, moc děkuji za opravu 🙂
Upravil jsem to a nechal to tak
while sleep 1; do tput sc; tput cup 0 $ (($ (tput cols) -16)); date + »% R% d /% m /% Y»; tput rc; done &
Zobrazuje pouze Hodina: Minuty Datum ve formátu DD / MM / RRRR
Skvělý přítel, pracoval jsem 100 díky