Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Jakub 22. 07. 2014, 11:53:21
-
Ahoj, poradí někdo jak od aktuální pozice kurzoru v terminálu můžu smazat všechno až dolů, nemyslím jen do konce řádku ale ař dolů na konec terminálu. Příkaz clear nehledám, ten maže celou obrazovku. Díky
-
Obavam se, ze se mozna ptate na neco jineho, nez co skutecne chcete. Minimalne by stalo za to upresnit, o jaky terminal se jedna, ale ja tak trochu tipuji, ze se vubec nejedna o terminal, ale nejaky program v terminalu pusteny. Pri normalni praci s "normalnimi" terminaly je totiz mozne editovat pouze jednu radku, a to prikazovou radku. Ta se sice pri delsim prikazu muze zalomit a byt tak zobrazena pres vice radek, ale z hlediska terminalu se stale jedna o jednu radku, takze smazani az na konec textu je ekvivalentni prikazu na smazani do konce radku - coz napr. pro bash je CTRL-K. To ale asi neni to co chcete. Takze byste mel trochu rozvest co delate, v cem to delate a proc to potrebujete.
-
Nemyslíš náhodou CTRL-L?
-
Pro rozumne terminaly:
echo -ne "\033[J"
(Presneji CSI n J, kde n je 0 - od kurzoru do konce, 1 - od zacatku ke kurzoru, 2 - celou obrazovku)
V terminfo je "smazat do konce terminalu" capability clr_eos, resp. ed, pro termcap cd. Takze cisteji a obecneji lze take:
tput ed
(pripadne tput cd pokud tput bere nazvy dle termcap, jako na *BSD)
Druha vec je, proc tohle vlastne chcete, protoze interaktivni vyuziti ani rozumne pouziti ve skriptu me prilis nenapada.