abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×

včera 00:33 | Zajímavý článek

Správce nástroje curl Daniel Stenberg na GitHubu průběžně vytváří svou novou knihu Uncurled, v níž shrnuje své dlouhodobé zkušenosti s údržbou open-source projektu: od odpozorovaných pouček po vtipné a ne až tak vtipné příklady e-mailů od uživatelů.

Fluttershy, yay! | Komentářů: 1
včera 00:22 | Nová verze

Byla vydána nová major verze 25.0 programovacího jazyka Erlang (Wikipedie) a související platformy OTP (Open Telecom Platform, Wikipedie). Přehled novinek v příspěvku na blogu.

Ladislav Hagara | Komentářů: 1
včera 00:11 | Nová verze

Deno (Wikipedie), běhové prostředí (runtime) pro JavaScript a TypeScript, bylo vydáno ve verzi 1.22. Přehled novinek v poznámkách k vydání.

Ladislav Hagara | Komentářů: 0
18.5. 18:22 | Nová verze

Společnost Red Hat oznámila vydání Red Hat Enterprise Linuxu (RHEL) 9.0. Vedle nových vlastností a oprav chyb přináší také aktualizaci ovladačů a předběžné ukázky budoucích technologií. Podrobnosti v poznámkách k vydání.

Ladislav Hagara | Komentářů: 6
18.5. 14:00 | Komunita

Lars Knoll oznámil, že po 25 letech v ekosystému Qt, z toho 22 let pracující pro různé společnosti vlastnící Qt, odchází ze společnosti The Qt Company do malého norského startupu.

Ladislav Hagara | Komentářů: 3
18.5. 13:22 | Zajímavý projekt

Na Kickstarteru běží kampaň na podporu mini ITX desky Turing Pi 2 Cluster Computer. Vložením 4 výpočetních modulů, podporovány jsou Raspberry Pi 4, Turing RK1 a Nvidia Jetson, lze získat 4uzlový cluster. Cena desky je 219 dolarů.

Ladislav Hagara | Komentářů: 2
18.5. 10:00 | Pozvánky

Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 198. brněnský sraz, který proběhne v pátek 20. května tradičně od 18 hodin v Pivovarské restauraci Moravia.

Ladislav Hagara | Komentářů: 2
18.5. 07:00 | Zajímavý software

Byla vydána nová verze 0.25 herního enginu Fyrox, původně rg3d. Přehled novinek s kódy, náhledy i videi v příspěvku na blogu.

Ladislav Hagara | Komentářů: 0
18.5. 00:11 | Nová verze

Multiplatformní audio přehrávač Qmmp (Wikipedie) byl vydán ve verzi 2.1.0. Z novinek lze zmínit například podporu XDG Base Directory Specification.

Ladislav Hagara | Komentářů: 0
17.5. 23:22 | Komunita

Letošní konference LibreOffice proběhne 28. září až 1. října v Bolzanu. The Document Foundation hledá přednášející.

Zdeněk Crhonek | Komentářů: 0
Na sociálních sítích nebo jiných webových diskuzích vystupuji pod
 (59%)
 (16%)
 (25%)
Celkem 279 hlasů
 Komentářů: 23, poslední 18.5. 16:14
Rozcestník


Dotaz: Skryti textu

13.6.2005 11:09 kafi | skóre: 25 | blog: muj_prvni_blog
Skryti textu
Přečteno: 64×
Zdravím potreboval bych poradit jestli nekdo nevite jak nezobrazovat psany text. Napriklad zadavam helo do prikazove radky a nechci aby se zobrazovalo co pisu (jak to treba je u passwd). Delam skript v Perlu a potrebuju to nejak vyresit. Uzivatel zadava jmeno a heslo a to se nesmi vypisovat.

Odpovědi

13.6.2005 11:13 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Skryti textu
Vypnutím flagu ECHO terminálu -- hledej tcsetattr (tady v diskusi, v info libc). V Perlu toto API zpřístupňuje nějaký modul... A nezapomeň ho pak zase zapnout.
13.6.2005 12:56 kafi | skóre: 25 | blog: muj_prvni_blog
Rozbalit Rozbalit vše Re: Skryti textu
Neslo by uveste nejaky priklad? Nasel jsem to co jsi napsal ale nejsem z toho dvakrat moudry. Spis bych rekl, ze jsem z toho debil.
13.6.2005 13:20 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Skryti textu
Ten příklad, který najde vyhledávání, je opsaný z info glibc, tudíž obsahuje ošetření chyb, kontrolu, zda je stdin terminál a vůbec. Co bys chtěl víc?
#define _GNU_SOURCE
#include <unistd.h>
#include <stdio.h>
#include <termios.h>

int
main(void)
{
    char *password = NULL;
    size_t len = 0;
    ssize_t passwlen;
    struct termios tattr, saved_tattr;

    fputs("Password: ", stdout);

    tcgetattr(STDIN_FILENO, &saved_tattr);
    tcgetattr(STDIN_FILENO, &tattr);
    tattr.c_lflag &= ~ECHO;
    tattr.c_lflag |= ECHONL;
    tcsetattr(STDIN_FILENO, TCSAFLUSH, &tattr);

    passwlen = getline(&password, &len, stdin);

    tcsetattr(STDIN_FILENO, TCSAFLUSH, &saved_tattr);

    if (passwlen > 0) {
        password[passwlen-1] = '\0';
        printf("Heslo = %s\n", password);
    }
    else
        fputs("Error...\n", stderr);

    return 0;
}
13.6.2005 13:28 mlz
Rozbalit Rozbalit vše Re: Skryti textu
Viz :
http://search.cpan.org/~persicom/Term-Prompt-1.03/lib/Term/Prompt.pm 

http://search.cpan.org/~jstowe/TermReadKey-2.30/ReadKey.pm
13.6.2005 16:29 KP
Rozbalit Rozbalit vše Re: Skryti textu
V Perlu možná stačí jen něco takového
system 'stty', '-echo';
$pass = <STDIN>; chomp($pass);
system 'stty', 'echo';
i když zmiňovaný modul má asi řadu jiných a lepších možností.
13.6.2005 17:20 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Skryti textu
A typická situace je pak taková, že to někdo pustí, uvědomí si, že nezná heslo, zmáčkne Ctrl+c a zůstane mu němý terminál.
13.6.2005 17:29 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Skryti textu
Což o to, handler na SIGINT je zapotřebí vždy.

Ale zato se mi zdá, že tu někdo má mírně obrácenou definici ,stačí`. Spouštění externích programů znamená, že mi nestačí prostředy daného jazyka.
13.6.2005 17:45 unchallenger | skóre: 69 | blog: unchallenger
Rozbalit Rozbalit vše Re: Skryti textu
Ovšem možnina funkcí, které lze bezpečně používat v handleru signálu, je dost omezená. Nespoléhal bych na to, že
system 'stty', 'echo';
projde.
14.6.2005 10:35 Jan Martinek | skóre: 43 | blog: johny | Brno
Rozbalit Rozbalit vše Re: Skryti textu
Měl by se k tomu vyjádřit někdo, kdo to umí v Perlu napsat čistě (což já nejsem). Nicméně v Pythonu existuje getpass.unix_getpass(), která se o postará o vše potřebné při zadávání hesla. Mám to otestováno na prográmku, co pípe, když se na pop3 serveru objeví nový mail a vypisuje počet mailů ve schránce. Ale to už s daným problémem nesouvisí.
#!/usr/bin/env python
import poplib, time, getpass, sys

pop3server = "pop3.seznam.cz"

user = getpass.unix_getpass("username at "+pop3server+":");
password = getpass.unix_getpass("Password for "+user+"@"+pop3server+":");

messages_prev = 0

while(1):
  try:
    M = poplib.POP3('pop3.seznam.cz')
    M.user(user)
    M.pass_(password)
#    break
  except poplib.error_proto, detail:
    print "Error occured", sys.exc_info()[0], detail
    continue
  res = M.stat()
  messages = res[0]
  M.quit()
  if (messages != messages_prev):
    print time.strftime("%H:%M:%S %d.%m.%Y"),": ", messages, Messages\a"
  messages_prev = messages
  time.sleep(1200)

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.