Записки программиста, обо всем и ни о чем. Но, наверное, больше профессионального.

2011-11-14

Masked shell input

Грех жаловатся на память, все-таки вспомнил, что надо сказать «Б» сказавши «А». Как в MS Windows в командной строке замаскировать звездочками ввод пароля, я написал. А вот как это сделать в Linux:
stty_orig=`stty -g`
stty -echo
read secret
stty $stty_orig
tech-recipes.com/rx/278/hide-password-entry-in-bournebash-shell-script

Правда, тут будет без звездочек. Зато «из коробки».


Какие бывают двойные смыслы.

В эпизоде «Captain Cook» сериала Blackadder Goes Forth есть момент, когда генерал интересуется у Блекаддера, знает ли он журнал (забыл название, что-то вроде Страна и Король). На что тот отвечает, что да, знает, прекрасная бумага — мягкая, прочная и отлично абсорбирует :)
А генерал говорит -
top-hole, Blackadder I thought it would be right up your alley.

Сперва я пару минут втыкал, о чем это он. Даже на паузу поставил. Так и не докумекал, отложил на потом. И вот, узнал о чем речь.
На первом уровне сказанное означает примерно следующее:
превосходно, я подумал, что вы с этим прекрасно справитесь (подразумевается, что он выдает Блекаддеру некое задание).
А на втором, я полагаю, нечто похожее на:
(отсыл к «дырке»), я так и думал, что вы чистите им проход (clean up — right up).
forum.wordreference.com/showthread.php?t=424007

Обратите внимание, дословный перевод вообще смысла не имеет. Сплошные фразеологизмы.

Вообще, я не понимаю, как можно переводить на другие языки подобные сериалы. Там более половины построено на игре слов и смыслов, с отсылками к глубоким культурным слоям, причем национальным. Только как стихи, задавшись целью сохранить поэтику и допустив потерю всего остального.

Сериал, кстати, превосходный (некоторым нравится даже в переводе на русский). Жалко, скоро кончится :(

1 комментарий:

  1. По поводу ввода пароля в bash-скриптах. Инструкция показывает, что у функции 'read' есть ключик 's'. Что позволяет сделать запрос пароля в скрипте очень просто:
    read -sp "Password: " secret

    или, в более продвинутом случае, с использованием функций:

    secret=
    # http://ss64.com/bash/read.html
    # -p prompt
    # Display prompt, without a trailing newline, before attempting
    # to read any input. The prompt is displayed only if input is coming from a
    # terminal.
    # -s
    # Silent mode. If input is coming from a terminal, characters are not echoed.
    ask_password() {
    read -sp "${1}: " secret
    echo
    }
    ask_password "Passphrase"

    ОтветитьУдалить

Архив блога

Ярлыки

linux (241) python (191) citation (186) web-develop (170) gov.ru (159) video (124) бытовуха (115) sysadm (100) GIS (97) Zope(Plone) (88) бурчалки (84) Book (83) programming (82) грабли (77) Fun (76) development (73) windsurfing (72) Microsoft (64) hiload (62) internet provider (57) opensource (57) security (57) опыт (55) movie (52) Wisdom (51) ML (47) driving (45) hardware (45) language (45) money (42) JS (41) curse (40) bigdata (39) DBMS (38) ArcGIS (34) history (31) PDA (30) howto (30) holyday (29) Google (27) Oracle (27) tourism (27) virtbox (27) health (26) vacation (24) AI (23) Autodesk (23) SQL (23) humor (23) Java (22) knowledge (22) translate (20) CSS (19) cheatsheet (19) hack (19) Apache (16) Manager (15) web-browser (15) Никонов (15) Klaipeda (14) functional programming (14) happiness (14) music (14) todo (14) PHP (13) course (13) scala (13) weapon (13) HTTP. Apache (12) SSH (12) frameworks (12) hero (12) im (12) settings (12) HTML (11) SciTE (11) USA (11) crypto (11) game (11) map (11) HTTPD (9) ODF (9) Photo (9) купи/продай (9) benchmark (8) documentation (8) 3D (7) CS (7) DNS (7) NoSQL (7) cloud (7) django (7) gun (7) matroska (7) telephony (7) Microsoft Office (6) VCS (6) bluetooth (6) pidgin (6) proxy (6) Donald Knuth (5) ETL (5) NVIDIA (5) Palanga (5) REST (5) bash (5) flash (5) keyboard (5) price (5) samba (5) CGI (4) LISP (4) RoR (4) cache (4) car (4) display (4) holywar (4) nginx (4) pistol (4) spark (4) xml (4) Лебедев (4) IDE (3) IE8 (3) J2EE (3) NTFS (3) RDP (3) holiday (3) mount (3) Гоблин (3) кухня (3) урюк (3) AMQP (2) ERP (2) IE7 (2) NAS (2) Naudoc (2) PDF (2) address (2) air (2) british (2) coffee (2) fitness (2) font (2) ftp (2) fuckup (2) messaging (2) notify (2) sharepoint (2) ssl/tls (2) stardict (2) tests (2) tunnel (2) udev (2) APT (1) CRUD (1) Canyonlands (1) Cyprus (1) DVDShrink (1) Jabber (1) K9Copy (1) Matlab (1) Portugal (1) VBA (1) WD My Book (1) autoit (1) bike (1) cannabis (1) chat (1) concurrent (1) dbf (1) ext4 (1) idioten (1) join (1) krusader (1) license (1) life (1) migration (1) mindmap (1) navitel (1) pneumatic weapon (1) quiz (1) regexp (1) robot (1) science (1) serialization (1) spatial (1) tie (1) vim (1) Науру (1) крысы (1) налоги (1) пианино (1)