Mysql Rapid Loading

From: Mike Harrison 
------------------------------------------------------
http://geeklabs.com/widget/mysqlrapidload/Rapid%20Load%20MySQL%20Database

A quick perl hack to split up a large MySQL database “dump” (from mysqldump) into several files, 
and load it using multiple processes. Depending on your data, seems to provide an large speedup. On an 8 hour MySQL load, It loaded in right at 3hours with threads set to 4. 
In this case, everything but two tables loaded in minutes. 

Played with splitting up large inserts into multiple files, but it seems the indexing gets pretty funky. More efficient long term to load a table sequentially (it seems). 






To use PGP, or not to use PGP...

From: David White 
------------------------------------------------------
I'm working on a presentation I'll give next month at a conference geared
towards folks working for smaller Christian / missionary-focused nonprofits
on "Introduction to Security."

Some of the folks who attend my presentation will probably be a 1-man shop
with very little general IT knowledge, and others will probably know oodles
more than I about security and information systems.

Anyway... I installed OpenPGP into Thunderbird a few months ago, although
I've rarely (if ever) used it to sign or encrypt legitimate messages,
partly due to the fact that almost no one that I email uses PGP or have
ever heard of it.

Recently, I've been doing some research into how useful it actually is, and
whether or not it is actually secure.

My findings so far is that the current version of PGP is very secure.

Indeed, according to Wikipedia, there is no known method to breaking PGP
encryption: http://en.wikipedia.org/wiki/Pretty

Program to download transactions from bank websites

From: James Nylen 
------------------------------------------------------
I've written a program to... you guessed it... download transactions and
balances from bank websites.  Most of the bank websites I have seen are
just atrocious in terms of code and design, and I wanted a system to unify
my accounts.

Here's the code and documentation:

https://github.com/nylen/node-banker

I'd like to start releasing more software, so what are some good ways to
publicize your work?

I use this program with GnuCash (free accounting software) and a GnuCash
web interface that I wrote:

https://github.com/nylen/gnucash-django

This combination doesn't do everything I want, but it is still really
useful to me.  If you find any of this useful, great - please use it and
post issues to GitHub.

The transaction downloader is written in Node.js, which I like anyway, but
it's a practical choice too since a lot of these bank websites require
JavaScript to function properly.  So I think this code is also a decent
example of how to scrape pages using a headless browser.

Old code never dies..

From: Mike Harrison 
------------------------------------------------------

Rambling while watching a long slow database load:

I got a strange call last night. Seems a pager company, that bought a 
pager company.. that bought a pager company... that bought a local pager 
company that was the dregs from another local pager company that somewhere 
in the late 1990's I wrote an SMTP mail server in Perl that gatewayed to 
alphanumeric pagers via the TAP protocol.. had a server issue. It's the 
only production C code I ever wrote, and it was munged from someone else's 
example code. Once upon a time it made a lot of money as e-pageme.com
(I used to charge $1 a month for the service, per pager..)

I SSH'd in.. rebooted it.. and its magically working again.

Seems pagers have become the medical worlds secret communications layer..
it's the one way to always contact a doctor, no matter what, because 
pagers are still allowed where cell phones are not.

That project taught me several things, including that most "magic" is best 
performed as a service for a small fee. It also reminds me that some 
things never ever die, even when you want them to, and that I should do a 
better job of making sure what I do is the right thing to do, and done 
well. I'm a big hypocrite on that point, most of what I do for a living 
barely qualifies as duct tape and zip-ties, although time has proven 
most of my kludges to be enduring.

It also reminded me, talking to the technical guys at the latest owners of 
this abortion... that few people understand the lowest levels of 
anything.. the "magic" that is a protocal like TAP
(Telecommunicator/Telelocator Alphanumeric Protocol).
http://en.wikipedia.org/wiki/Telelocator

silly perl one liner to randomize passwords

From: flushy@flushy.net
------------------------------------------------------
I was bored yesterday and a FB status spawned this:

sudo cat /etc/shadow | perl -pe 'sub r{$l=shift;open(R,"base64  
/dev/urandom|")||die$!;sysread(R,$R,$l*4);close(R);$R=~s/[^\w]//g;substr($R,0,$l)}@P=split/:/;if($P[1]=~/\/){$s=&r(8);$p=&r(16);$P[1]=crypt($p,"\\$$s");$

Atlanta linux/unix admin

From: Matt Keys 
------------------------------------------------------
The details are below.

Regards,
Matt

-----
From: Kathy Dean
Sent: Wednesday, February 12, 2014 1:51 PM
To: Matt Keys
Subject: Unix / Linux Administrator - On Call - No Travel Atlanta Growth!

Hi Matt,

I have a client that would like to interview you for a role that they =

need filled. Great benefits and growth opportunity! They are seeking =

people who want to grow into management. They are also looking for a =

culture fit - very team oriented. This is the detailed Job description. =

Preference is someone with exp. with Nagios. This firm is building a SOX =

IT Hub for themselves in Atlanta and the opportunity for growth is =

tremendous.

Qualifications: =95 Previous experience as Linux/Unix administrator preferr=
ed
=95 Experience supporting IMAP/POP/SMTP email a must
=95 Must be able to compile/install/configure server software (apache, =

openldap, php, etc)
=95 Strong knowledge in setup and deployment of database
=95 Experience in managing large database sizes a plus (MySQL, PostgreSQL, =

Oracle)
=95 Strong knowledge in optimization and interrogation of databases
=95 Experience in data integration and database design
=95 Experience with monitoring logs to identify problems
=95 Deeply familiar with networking including installation/configuration =

of routers, switches, firewalls, desktops
=95 Powerful Linux Shell Skills (use grep, sed, awk, find, etc)
=95 Skilled with scripting languages such as PHP, Ruby, Python
=95 Comfort with HTTP service architecture, optimization a big plus
=95 Server scripting tools including perl/bash/sh/tcsh/csh or some =

combination required
=95 Knowledge of DNS, preferably BIND
=95 Experience with Phone Systems such as Asterisk and Hylafax Servers =

preferred

Thanks,
Kathy
Kathy.Dean@TeneoTalent.com
303-443-6520

LaTeX copy and pasting from pdf output

From: "Robert A. Kelly III" 
------------------------------------------------------
 When I generate PDF from a LaTeX source file with pdflatex on Debian, I
run into several issues when copy and pasting from the PDF.

1. Double quotes show up strangely, or not at all. When I copy and
pasted on my system, the quotes are simply missing. When I sent it to
someone else and they copy and pasted and sent edits back in a docx
file, they had \ and " for the double quotes.

2. Indentation is lost, which means paragraphs are not properly delineated.

3. Line breaks are preserved, which is not desirable if you are pasting
into a context where you want the lines neatly rewrapped.

4. Automatic hyphenation is preserved, which is really undesirable if it
gets rewrapped when you copy and paste.

5. Page numbers are copied and pasted with the the text, which is also
frequently undesirable.

If anyone knows how to change any of these things in the PDF output, I
would appreciate it. Ideally, I would like to be able to copy and paste
from the PDF and have all of the characters show up in a usable form,
even if they are ascii equivalents, preserve indentation, but omit line
breaks, automatic hyphenation, and page numbers.

OT: Unix Administrator in Atlanta

From: Matt Keys 
------------------------------------------------------
Forwarded message and job description below that :

---

From: Dana McSpadden 
Sent: Monday, January 13, 2014 11:51 AM
To: Matt Keys
Subject: Infosys McCamish - Job Opportunity

Hi Matt,

My name is Dana McSpadden and I am a Recruiter with Infosys =

BPO/McCamish. We are currently seeking an experienced Unix/Linux/HP-UX =

Administrator to join our Data Center Services organization at our =

Atlanta, GA office. A job description is attached for your review.

Please let me know if you are interested in learning more about this =

opportunity. To express interest or to answer any questions you may =

have, I can be contacted via email at Dana

Paperless office/PDF/Document Management solutions

From: Dan Lyke 
------------------------------------------------------
We run an Ubuntu household. Paper is swamping us. We want to go to
paperless archives. I have almost convinced myself that current SANE
support for the Fujitsu ScanSnap iX500 is sufficient, and that I can
get "scanbd" or "scanbuttond" working with it. Run the output from
that through gocr, get some probably extremely noisy text files, along
with PDFs, I'm headed the right direction. [1]

The question then becomes "what do we do with it?"

I see 3 options:

1. A shared tree that we can search and that gets backed up.
2. git archives checked out on our various laptops
3. Some dedicated paperless office software solution.

#1 is appealing, except for two considerations:

First, what network file system do we use? I'd like something that
works from both inside and outside our network (or at least doesn't
hork up a hairball when we try to boot our machines outside our
network). Should this be:

*  NFS? (Seems like it breaks and requires new configuration with
every upgrade, definitely wouldn't work outside the network)
* SAMBA? (Never gotten this really working well, and putting this on
our server which has outside exposure scares the crap out of me)
* sshfs?

Second, what's the best technology for searching those .txt files that
accompany and were OCRed from the PDFs?

Any suggestions?

Thanks!

Dan

[1] http://www.gaggl.com/2013/08/paperless-office-on-a-budget/

My own private NSA

From: Dan Lyke 
------------------------------------------------------
Short version: I wanna snoop on DNS traffic on my network, and I want
a little auditing to reassure myself about what sort of traffic the
devices on my network are generating.

Background: Alan, Charlene's developmentally disabled brother is
staying with us, and we got him a $79 Android 4.1 tablet+keyboard
combination off of Nomorerack.com for Christmas. If, 20 years ago,
you'd have told me that I could buy a multi-core GHZ+ device with that
resolution 3d accelerated for $80, I would have called it unbelievable
science fiction.

I'm sitting in my cube this afternoon and one of the ops guys walks
over and says "our malware DNS page just got the most interesting
delisting request from your home IP address..."

Indeed. The de-listing request form got a couple of "overseas
pharmacy" and "cheap auto insurance" HTML and BBCode posts from, from
a user agent of

  "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:19.0) Gecko/20100101 Firefox/19.0"

I call home, Charlene disavows running Windows. I log in to the Unifi
controller and don't see any Windows machines on the wireless net.

So I haven't had too much chance to debug yet, but I suspect that this
is coming from Alan's tablet.

What I would like to do is to run a logging DNS proxy on the home
server, and, probably put the DHCP server on that machine as well.

Anyone got experience with the right way to do this? I could easily
whip up a Perl DNS proxy, and probably just install isc-dhcp-server,
but if someone's got some experience with this that'd be awesome.


Thanks!

Dan

Updates usually okay. Never upgrade.

From: Unkmar 
------------------------------------------------------
Can't:
  Install: Python modules, perl modules, C libraries
  Resolve: C libraries.

Upgrades don't work!  Never ever ever ever upgrade.
  At least one thing breaks and it is usually a core issue that breaks many
other things.
Update? sure, why not.  Rare problems do sometimes occur.

I'm going to rebuild.  Fresh install and transfer my data back over.

Lucius L. Hilley III

Software Engineer openings in NYC (revised)

From: Dee Holtsclaw 
------------------------------------------------------
Bloomberg is looking to expand the programming staff in SSEOMS and STEP
here in New York.

The full job posting information is available at:
http://jobs.bloomberg.com/job/New-York-Trading-Systems-CC%2B%2B-Experienced-Software-Developer-Job-NY/21141500/

I started as a contractor in September 2012 and accepted a full-time
position several months ago. Besides C++, we use SQL, a lot of
Javascript for UI and a smattering of Python, Perl and shell scripts.
The benefits are incredible and employees are treated VERY well. The
downside is you have to live in NYC. Please feel free to drop me a line
off-list for more information or just to shoot-the-shit.

=?utf-8?b?KOKVr8Kw4pahwrDvvInila/vuLUg4pS74pSB4pS7KSBh?= =?utf-8?b?bmQgbm93IMKvXF8o44OEKV8vwq8gKHdhcyDilIziiKnilJAo4pejX

From: Dan Lyke 
------------------------------------------------------
So if you're a Perl CGI module user, the flag you're looking for is:


use CGI qw/-utf8/;

(unless you're processing file uploads, but if you "perldoc CPAN" and 
search for "-utf8" you'll find the other magic)

That is all.

Dan

Road Server Project

From: Mike Harrison 
------------------------------------------------------

Nancy and I bought a new RV yesterday, the next project will be turning
a netbook/notebook into an access device and server.

My goal is that it'd provide a consistent Wifi interface and network 
inside of the RV for a tablet/phone and a couple of laptops.
I've been collecting gear including a high range wifi antenna (a 
directional and an omni) - the goal is to merge a combination of WiFi
that I can suck (legally and with permission) and one (or more)
cell uplinks.

I've done some googling, and found some commercial "all in one" boxes for 
this, but me, being me, would love to roll my own on Linux.

My questions for the group:

   Am I insane? (probably)

   Is this a Raspberry Pi-ish project (That might be fun)

   Anyone seen any magic for managing multiple changing upstream 
connections or am I having fun with iptables and routeing commands via 
some perl scripts (which I know how to do..)?  It's been a while since I 
did these types of things.

--Mike--


============================================================
Mike Harrison   bogon@geeklabs.com  cell: 423.605.6943

Being careful with devices with memory chips

From: Mike Harrison 
------------------------------------------------------

Not exactly a direct answer to an off-topic question:

I've been told that devices with memory chips can be destroyed by =
Microwave ovens.. HERF (got a 5watt plus CD Radio?), high voltage like a =
TV flyback transformer or from a spark plug wire, being near or part of =
a plasma torch or arc welder circuit..  In fact, while using my plasma =
torch tonight, I put my cell phone on the hood of the car about 30 feet =
away. Cats and balloons making static electricity can be fun, and =
dangerous for your electronics.=20

You want to be real careful with mobile phones, tablets, SD cards and =
USB drives that you don't do any of those things, it'll erase them or =
fry them without a trace to let you know what happened.  Even the NSA =
would have to grind down the chip and attempt to read the last state =
with an electron microscope or something else even weirder.=20

So be careful out there: iOS, Linux and Winders portable devices are =
still subject to e-brain implosions if handled improperly.=20

Programmatically generating LaTeX

From: "Robert A. Kelly III" 
------------------------------------------------------
When programmatically generating LaTeX from other sources, how do you
deal with some of the unique features of LaTeX, such as distinguishing
inter-word and inter-sentence spacing, and hyphen-minus versus en dash
and em dash?

E.G.- LaTeX typically uses a larger space between sentences than between
words, so we indicate when a period does not indicate the end of a
sentence by writing,
"Fruits, vegetables, etc.\ are on sale today." and since initials are
assumed not to end a sentence we write,
"He was staying in apartment B\@." when it does. Similarly, in writing
plain text it is common to use a hyphen-minus for a variety of things
that actually have different representations in good formal typography.
Ranges of numbers, for instance, are properly written with an en dash,
so in LaTeX we write, "1982--2013" rather than, "1982-2013".

Some of these things seem like they would not be easy to determine
programmatically what is the appropriate representation (which is
probably why LaTeX requires explicit indications for some of these
things while it does other things, such as typographical ligatures,
automatically). For instance, just because a hyphen-minus comes between
two numbers does not mean it should be an en dash. Telephone numbers are
commonly separated by a hyphen, never an en dash. Of course, depending
on context, a number like 457-1024 could be a phone number, or a range
of numbers, etc.

It seems to me that many of these things could be solved by using
unicode with proper characters for various dashes, accented characters,
etc in whatever source we are processing and then using XeTeX. However,
this still wouldn't solve some things, like the difference in spacing
between words and sentences.

What are the usual or recommended ways of handling this? I'm sure it is
something that has been addressed before as I have heard many times of
LaTeX being generated programmatically to generate PDF reports, by Emacs
calendar and org-mode, etc.

Amazon EC2 woes

From: Jon Stanford 
------------------------------------------------------
Ok I'm attempting to setup a remote gitlab for myself... but I'm failing miserably with a few of the finer points of domain hosting... namely forwarding and subdomains.

I have the domains I want jbirdvegas.org/net/info/com (I'm mostly interested in the org, the others just forward to the org anyways) I only bought all four because they were super cheap durring a godaddy sale (Yea I'm not a fan of them either but cheap domains are cheap domaing are cheap domains).

I installed gitlab to an EC2 instance without issues and I managed to point jbirdvegas.org to the gitlab instance. All that is fine and dandy. Now if you visit my domain a silly banner pops up that the public should never see. I've been lazy about fixing this because its not a public site so noone visits it but me. However I'd like to share some code I've hosted there so now I'm wanting to make it forward propperly to the location of the actual start page jbirdvegas.org/gitlab... or better yet us a subdomain for my git ventures.

I'd really like to use the main domain for a future project and move the gitlab to a subdomain like git.jbirdvegas.org

I've tried everything I can think... (admittedly it isn't much as this is my first time attempting to host a domain)

on Route 57: I created a "Hosted Zone" for my git subdomain and attempted to edit the Record Sets to include "NS" (Name Server) and a "SOA" (Start of Authority) I've tried creating a "PTR" (Pointer) to just forward the traffic however nothing works.

I'm sure I'm doing something stupid and its probably an easy fix but I just don't get it... I've read all the docs I can find on creating subdomains on EC2 instances but ... I'm failing.

So any pointers? Has anyone on this list had success creating a subdomain on an EC2 instance? I choose an EC2 instance for the obvious its free reason but I've seen others use subdomains on their EC2 so I know its possible.

I realize lots of you guys are admins and are probably laughing at the neophile domain host right now but I'm simply lost and thought I would plea to those with more experience than I have... Thanks ahead of time guys.

Oh and I can forward the domains I didn't associate with the EC2 instance just fine so jbirdvegas.net forwards correctly to jbirdvegas.org/gitlab same for .com and .info.

UTF8 Trick (cats!)

From: "Robert A. Kelly III" 
------------------------------------------------------
The real purpose of Unicode is so we can exchange plain text cats on the
internet! 😸

On 06/26/2013 09:33 AM, James Nylen wrote:
> 
> UTF-8 encoded sample plain-text file
> ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
> 
> Markus Kuhn [ˈmaʳkʊs kuːn]  — 2002-07-25
> 
> 
> The ASCII compatible UTF-8 encoding used in this plain-text file
> is defined in Unicode, ISO 10646-1, and RFC 2279.
> 
> 
> Using Unicode/UTF-8, you can write in emails and source code things such as
> 
> Mathematics and sciences:
> 
>   ∮ E⋅da = Q,  n → ∞, ∑ f(i) = ∏ g(i)
> 
>   ∀x∈ℝ: ⌈x⌉ = −⌊−x⌋, α ∧ ¬β = ¬(¬α ∨ β)
> 
>   ℕ ⊆ ℕ₀ ⊂ ℤ ⊂ ℚ ⊂ ℝ ⊂ ℂ
> 
>   ⊥ < a ≠ b ≡ c ≤ d ≪ ⊤ ⇒ (⟦A⟧ ⇔ ⟪B⟫)
> 
>   2H₂ + O₂ ⇌ 2H₂O, R = 4.7 kΩ, ⌀ 200 mm
> 
> Linguistics and dictionaries:
> 
>   ði ıntəˈnæʃənəl fəˈnɛtık əsoʊsiˈeıʃn
>   Y [ˈʏpsilɔn], Yen [jɛn], Yoga [ˈjoːgɑ]
> 
> APL:
> 
>   ((V⍳V)=⍳⍴V)/V←,V    ⌷←⍳→⍴∆∇⊃‾⍎⍕⌈
> 
> Nicer typography in plain text files:
> 
>   ╔══════════════════════════════════════════╗
>   ║                                          ║
>   ║   • ‘single’ and “double” quotes         ║
>   ║                                          ║
>   ║   • Curly apostrophes: “We’ve been here” ║
>   ║                                          ║
>   ║   • Latin-1 apostrophe and accents: '´`  ║
>   ║                                          ║
>   ║   • ‚deutsche‘ „Anführungszeichen“       ║
>   ║                                          ║
>   ║   • †, ‡, ‰, •, 3–4, —, −5/+5, ™, …      ║
>   ║                                          ║
>   ║   • ASCII safety test: 1lI|, 0OD, 8B     ║
>   ║                      ╭─────────╮         ║
>   ║   • the euro symbol: │ 14.95 € │         ║
>   ║                      ╰─────────╯         ║
>   ╚══════════════════════════════════════════╝
> 
> Combining characters:
> 
>   STARGΛ̊TE SG-1, a = v̇ = r̈, a⃑ ⊥ b⃑
> 
> Greek (in Polytonic):
> 
>   The Greek anthem:
> 
>   Σὲ γνωρίζω ἀπὸ τὴν κόψη
>   τοῦ σπαθιοῦ τὴν τρομερή,
>   σὲ γνωρίζω ἀπὸ τὴν ὄψη
>   ποὺ μὲ βία μετράει τὴ γῆ.
> 
>   ᾿Απ᾿ τὰ κόκκαλα βγαλμένη
>   τῶν ῾Ελλήνων τὰ ἱερά
>   καὶ σὰν πρῶτα ἀνδρειωμένη
>   χαῖρε, ὦ χαῖρε, ᾿Ελευθεριά!
> 
>   From a speech of Demosthenes in the 4th century BC:
> 
>   Οὐχὶ ταὐτὰ παρίσταταί μοι γιγνώσκειν, ὦ ἄνδρες ᾿Αθηναῖοι,
>   ὅταν τ᾿ εἰς τὰ πράγματα ἀποβλέψω καὶ ὅταν πρὸς τοὺς
>   λόγους οὓς ἀκούω· τοὺς μὲν γὰρ λόγους περὶ τοῦ
>   τιμωρήσασθαι Φίλιππον ὁρῶ γιγνομένους, τὰ δὲ πράγματ᾿
>   εἰς τοῦτο προήκοντα,  ὥσθ᾿ ὅπως μὴ πεισόμεθ᾿ αὐτοὶ
>   πρότερον κακῶς σκέψασθαι δέον. οὐδέν οὖν ἄλλο μοι δοκοῦσιν
>   οἱ τὰ τοιαῦτα λέγοντες ἢ τὴν ὑπόθεσιν, περὶ ἧς βουλεύεσθαι,
>   οὐχὶ τὴν οὖσαν παριστάντες ὑμῖν ἁμαρτάνειν. ἐγὼ δέ, ὅτι μέν
>   ποτ᾿ ἐξῆν τῇ πόλει καὶ τὰ αὑτῆς ἔχειν ἀσφαλῶς καὶ Φίλιππον
>   τιμωρήσασθαι, καὶ μάλ᾿ ἀκριβῶς οἶδα· ἐπ᾿ ἐμοῦ γάρ, οὐ πάλαι
>   γέγονεν ταῦτ᾿ ἀμφότερα· νῦν μέντοι πέπεισμαι τοῦθ᾿ ἱκανὸν
>   προλαβεῖν ἡμῖν εἶναι τὴν πρώτην, ὅπως τοὺς συμμάχους
>   σώσομεν. ἐὰν γὰρ τοῦτο βεβαίως ὑπάρξῃ, τότε καὶ περὶ τοῦ
>   τίνα τιμωρήσεταί τις καὶ ὃν τρόπον ἐξέσται σκοπεῖν· πρὶν δὲ
>   τὴν ἀρχὴν ὀρθῶς ὑποθέσθαι, μάταιον ἡγοῦμαι περὶ τῆς
>   τελευτῆς ὁντινοῦν ποιεῖσθαι λόγον.
> 
>   Δημοσθένους, Γ´ ᾿Ολυνθιακὸς
> 
> Georgian:
> 
>   From a Unicode conference invitation:
> 
>   გთხოვთ ახლავე გაიაროთ რეგისტრაცია Unicode-ის მეათე საერთაშორისო
>   კონფერენციაზე დასასწრებად, რომელიც გაიმართება 10-12 მარტს,
>   ქ. მაინცში, გერმანიაში. კონფერენცია შეჰკრებს ერთად მსოფლიოს
>   ექსპერტებს ისეთ დარგებში როგორიცაა ინტერნეტი და Unicode-ი,
>   ინტერნაციონალიზაცია და ლოკალიზაცია, Unicode-ის გამოყენება
>   ოპერაციულ სისტემებსა, და გამოყენებით პროგრამებში, შრიფტებში,
>   ტექსტების დამუშავებასა და მრავალენოვან კომპიუტერულ სისტემებში.
> 
> Russian:
> 
>   From a Unicode conference invitation:
> 
>   Зарегистрируйтесь сейчас на Десятую Международную Конференцию по
>   Unicode, которая состоится 10-12 марта 1997 года в Майнце в Германии.
>   Конференция соберет широкий круг экспертов по  вопросам глобального
>   Интернета и Unicode, локализации и интернационализации, воплощению и
>   применению Unicode в различных операционных системах и программных
>   приложениях, шрифтах, верстке и многоязычных компьютерных системах.
> 
> Thai (UCS Level 2):
> 
>   Excerpt from a poetry on The Romance of The Three Kingdoms (a Chinese
>   classic 'San Gua'):
> 
>   [----------------------------|------------------------]
>     ๏ แผ่นดินฮั่นเสื่อมโทรมแสนสังเวช  พระปกเกศกองบู๊กู้ขึ้นใหม่
>   สิบสองกษัตริย์ก่อนหน้าแลถัดไป       สององค์ไซร้โง่เขลาเบาปัญญา
>     ทรงนับถือขันทีเป็นที่พึ่ง           บ้านเมืองจึงวิปริตเป็นนักหนา
>   โฮจิ๋นเรียกทัพทั่วหัวเมืองมา         หมายจะฆ่ามดชั่วตัวสำคัญ
>     เหมือนขับไสไล่เสือจากเคหา      รับหมาป่าเข้ามาเลยอาสัญ
>   ฝ่ายอ้องอุ้นยุแยกให้แตกกัน          ใช้สาวนั้นเป็นชนวนชื่นชวนใจ
>     พลันลิฉุยกุยกีกลับก่อเหตุ          ช่างอาเพศจริงหนาฟ้าร้องไห้
>   ต้องรบราฆ่าฟันจนบรรลัย           ฤๅหาใครค้ำชูกู้บรรลังก์ ฯ
> 
>   (The above is a two-column text. If combining characters are handled
>   correctly, the lines of the second column should be aligned with the
>   | character above.)
> 
> Ethiopian:
> 
>   Proverbs in the Amharic language:
> 
>   ሰማይ አይታረስ ንጉሥ አይከሰስ።
>   ብላ ካለኝ እንደአባቴ በቆመጠኝ።
>   ጌጥ ያለቤቱ ቁምጥና ነው።
>   ደሀ በሕልሙ ቅቤ ባይጠጣ ንጣት በገደለው።
>   የአፍ ወለምታ በቅቤ አይታሽም።
>   አይጥ በበላ ዳዋ ተመታ።
>   ሲተረጉሙ ይደረግሙ።
>   ቀስ በቀስ፥ ዕንቁላል በእግሩ ይሄዳል።
>   ድር ቢያብር አንበሳ ያስር።
>   ሰው እንደቤቱ እንጅ እንደ ጉረቤቱ አይተዳደርም።
>   እግዜር የከፈተውን ጉሮሮ ሳይዘጋው አይድርም።
>   የጎረቤት ሌባ፥ ቢያዩት ይስቅ ባያዩት ያጠልቅ።
>   ሥራ ከመፍታት ልጄን ላፋታት።
>   ዓባይ ማደሪያ የለው፥ ግንድ ይዞ ይዞራል።
>   የእስላም አገሩ መካ የአሞራ አገሩ ዋርካ።
>   ተንጋሎ ቢተፉ ተመልሶ ባፉ።
>   ወዳጅህ ማር ቢሆን ጨርስህ አትላሰው።
>   እግርህን በፍራሽህ ልክ ዘርጋ።
> 
> Runes:
> 
>   ᚻᛖ ᚳᚹᚫᚦ ᚦᚫᛏ ᚻᛖ ᛒᚢᛞᛖ ᚩᚾ ᚦᚫᛗ ᛚᚪᚾᛞᛖ ᚾᚩᚱᚦᚹᛖᚪᚱᛞᚢᛗ ᚹᛁᚦ ᚦᚪ ᚹᛖᛥᚫ
> 
>   (Old English, which transcribed into Latin reads 'He cwaeth that he
>   bude thaem lande northweardum with tha Westsae.' and means 'He said
>   that he lived in the northern land near the Western Sea.')
> 
> Braille:
> 
>   ⡌⠁⠧⠑ ⠼⠁⠒  ⡍⠜⠇⠑⠹⠰⠎ ⡣⠕⠌
> 
>   ⡍⠜⠇⠑⠹ ⠺⠁⠎ ⠙⠑⠁⠙⠒ ⠞⠕ ⠃⠑⠛⠔ ⠺⠊⠹⠲ ⡹⠻⠑ ⠊⠎ ⠝⠕ ⠙⠳⠃⠞
>   ⠱⠁⠞⠑⠧⠻ ⠁⠃⠳⠞ ⠹⠁⠞⠲ ⡹⠑ ⠗⠑⠛⠊⠌⠻ ⠕⠋ ⠙⠊⠎ ⠃⠥⠗⠊⠁⠇ ⠺⠁⠎
>   ⠎⠊⠛⠝⠫ ⠃⠹ ⠹⠑ ⠊⠇⠻⠛⠹⠍⠁⠝⠂ ⠹⠑ ⠊⠇⠻⠅⠂ ⠹⠑ ⠥⠝⠙⠻⠞⠁⠅⠻⠂
>   ⠁⠝⠙ ⠹⠑ ⠡⠊⠑⠋ ⠍⠳⠗⠝⠻⠲ ⡎⠊⠗⠕⠕⠛⠑ ⠎⠊⠛⠝⠫ ⠊⠞⠲ ⡁⠝⠙
>   ⡎⠊⠗⠕⠕⠛⠑⠰⠎ ⠝⠁⠍⠑ ⠺⠁⠎ ⠛⠕⠕⠙ ⠥⠏⠕⠝ ⠰⡡⠁⠝⠛⠑⠂ ⠋⠕⠗ ⠁⠝⠹⠹⠔⠛ ⠙⠑
>   ⠡⠕⠎⠑ ⠞⠕ ⠏⠥⠞ ⠙⠊⠎ ⠙⠁⠝⠙ ⠞⠕⠲
> 
>   ⡕⠇⠙ ⡍⠜⠇⠑⠹ ⠺⠁⠎ ⠁⠎ ⠙⠑⠁⠙ ⠁⠎ ⠁ ⠙⠕⠕⠗⠤⠝⠁⠊⠇⠲
> 
>   ⡍⠔⠙⠖ ⡊ ⠙⠕⠝⠰⠞ ⠍⠑⠁⠝ ⠞⠕ ⠎⠁⠹ ⠹⠁⠞ ⡊ ⠅⠝⠪⠂ ⠕⠋ ⠍⠹
>   ⠪⠝ ⠅⠝⠪⠇⠫⠛⠑⠂ ⠱⠁⠞ ⠹⠻⠑ ⠊⠎ ⠏⠜⠞⠊⠊⠥⠇⠜⠇⠹ ⠙⠑⠁⠙ ⠁⠃⠳⠞
>   ⠁ ⠙⠕⠕⠗⠤⠝⠁⠊⠇⠲ ⡊ ⠍⠊⠣⠞ ⠙⠁⠧⠑ ⠃⠑⠲ ⠔⠊⠇⠔⠫⠂ ⠍⠹⠎⠑⠇⠋⠂ ⠞⠕
>   ⠗⠑⠛⠜⠙ ⠁ ⠊⠕⠋⠋⠔⠤⠝⠁⠊⠇ ⠁⠎ ⠹⠑ ⠙⠑⠁⠙⠑⠌ ⠏⠊⠑⠊⠑ ⠕⠋ ⠊⠗⠕⠝⠍⠕⠝⠛⠻⠹
>   ⠔ ⠹⠑ ⠞⠗⠁⠙⠑⠲ ⡃⠥⠞ ⠹⠑ ⠺⠊⠎⠙⠕⠍ ⠕⠋ ⠳⠗ ⠁⠝⠊⠑⠌⠕⠗⠎
>   ⠊⠎ ⠔ ⠹⠑ ⠎⠊⠍⠊⠇⠑⠆ ⠁⠝⠙ ⠍⠹ ⠥⠝⠙⠁⠇⠇⠪⠫ ⠙⠁⠝⠙⠎
>   ⠩⠁⠇⠇ ⠝⠕⠞ ⠙⠊⠌⠥⠗⠃ ⠊⠞⠂ ⠕⠗ ⠹⠑ ⡊⠳⠝⠞⠗⠹⠰⠎ ⠙⠕⠝⠑ ⠋⠕⠗⠲ ⡹⠳
>   ⠺⠊⠇⠇ ⠹⠻⠑⠋⠕⠗⠑ ⠏⠻⠍⠊⠞ ⠍⠑ ⠞⠕ ⠗⠑⠏⠑⠁⠞⠂ ⠑⠍⠏⠙⠁⠞⠊⠊⠁⠇⠇⠹⠂ ⠹⠁⠞
>   ⡍⠜⠇⠑⠹ ⠺⠁⠎ ⠁⠎ ⠙⠑⠁⠙ ⠁⠎ ⠁ ⠙⠕⠕⠗⠤⠝⠁⠊⠇⠲
> 
>   (The first couple of paragraphs of "A Christmas Carol" by Dickens)
> 
> Compact font selection example text:
> 
>   ABCDEFGHIJKLMNOPQRSTUVWXYZ /0123456789
>   abcdefghijklmnopqrstuvwxyz £©µÀÆÖÞßéöÿ
>   –—‘“”„†•…‰™œŠŸž€ ΑΒΓΔΩαβγδω АБВГДабвгд
>   ∀∂∈ℝ∧∪≡∞ ↑↗↨↻⇣ ┐┼╔╘░►☺♀ fi�⑀₂ἠḂӥẄɐː⍎אԱა
> 
> Greetings in various languages:
> 
>   Hello world, Καλημέρα κόσμε, コンニチハ
> 
> Box drawing alignment tests:                                          █
>                                                                       ▉
>   ╔══╦══╗  ┌──┬──┐  ╭──┬──╮  ╭──┬──╮  ┏━━┳━━┓  ┎┒┏┑   ╷  ╻ ┏┯┓ ┌┰┐    ▊
> ╱╲╱╲╳╳╳
>   ║┌─╨─┐║  │╔═╧═╗│  │╒═╪═╕│  │╓─╁─╖│  ┃┌─╂─┐┃  ┗╃╄┙  ╶┼╴╺╋╸┠┼┨ ┝╋┥    ▋
> ╲╱╲╱╳╳╳
>   ║│╲ ╱│║  │║   ║│  ││ │ ││  │║ ┃ ║│  ┃│ ╿ │┃  ┍╅╆┓   ╵  ╹ ┗┷┛ └┸┘    ▌
> ╱╲╱╲╳╳╳
>   ╠╡ ╳ ╞╣  ├╢   ╟┤  ├┼─┼─┼┤  ├╫─╂─╫┤  ┣┿╾┼╼┿┫  ┕┛┖┚     ┌┄┄┐ ╎ ┏┅┅┓ ┋ ▍
> ╲╱╲╱╳╳╳
>   ║│╱ ╲│║  │║   ║│  ││ │ ││  │║ ┃ ║│  ┃│ ╽ │┃  ░░▒▒▓▓██ ┊  ┆ ╎ ╏  ┇ ┋ ▎
>   ║└─╥─┘║  │╚═╤═╝│  │╘═╪═╛│  │╙─╀─╜│  ┃└─╂─┘┃  ░░▒▒▓▓██ ┊  ┆ ╎ ╏  ┇ ┋ ▏
>   ╚══╩══╝  └──┴──┘  ╰──┴──╯  ╰──┴──╯  ┗━━┻━━┛  ▗▄▖▛▀▜   └╌╌┘ ╎ ┗╍╍┛ ┋
>  ▁▂▃▄▅▆▇█
>                                                ▝▀▘▙▄▟
> 
> 
> 
> On Wed, Jun 26, 2013 at 8:15 AM, Mike Harrison  > wrote:
> 
> 
>     I've been doing this for a few months now, watching it run, and I've
>     been amazed by the accuracy of this trick. The people I normally
>     would want to talk to on this address, don't send mail with UTF8
>     characters. I run this before pulling up pine via shell to read my mail.
> 
>     A simple shell in my user directory:
> 
>     grep --color='auto' -P -n "[\x80-\xFF]" Maildir/cur/*
>     grep  -P "[\x80-\xFF]" Maildir/cur/* >bad
>     perl ./nukebad.pl 
> 
>     Nukebad is simple:
> 
>     #!/usr/bin/perl
>     open(IN,"bad") ; while(){
>      $filename = substr($

Command Line Foo v2.0

From: Jon Stanford 
------------------------------------------------------
So I've been beefing up my ~/.bashrc with some useful, and some not so useful CLI magic.  I thought I would share some of my fav functions... and offer a beat that style discussion ;)

One thing I'm working on is using the takepic to capture an image of anyone who opens the terminal and eventually everytime the computer turns on. The problem is each time it overwrite the previous pic, so I can't keep a directory with all the pics using the date as the filename. :(

Here are my fav functions.

# Take webcam pics
#usage: takepic 4 #takes four pictures
takepic() {
   if [ -z "$1" ]; then
     echo "Taking one picture"
     mplayer -vo png -frames 1 tv://
   else
     echo "Taking $1 pictures"
     mplayer -vo png -frames "$1" tv://
   fi
}

#show a pretty figlet clock (blocks term)
clock() {
    while [ 1 ]; do
        clear
        date +%r | figlet
        sleep 1
    done
}

#search wikipedia for a term
wiki() {
    if [ -z "$1" ]; then
        echo -e "You must supply a query\nie: wiki Snoop\ Dogg"
    else
        dig +short txt "$1".wp.dg.cx
    fi
}

#get my external IP
myip() {
     curl ifconfig.me
}

#show time in top right of terminal (persistant, constantly updated and doesn't block term)
showtime() {
    while sleep 1;do tput sc;tput cup 0 $(($(tput cols)-29));date;tput rc;done &
}

#get all the strings from RAM **may contain private info like passwords**
showram() {
    sudo strings /dev/mem
}

#make a graphical representation of the underlying directories from current location in file tree
graphtree() {
    ls -R | grep ":$" | sed -e 's/:$//' -e 's/[^-][^\/]*\//--/g' -e 's/^/ /' -e 's/-/|/'
}

#free memory that is no longer being used
freemem() {
    free && sync && echo 3 > /proc/sys/vm/drop

UTF8 Trick

From: Mike Harrison 
------------------------------------------------------

I've been doing this for a few months now, watching it run, and I've been 
amazed by the accuracy of this trick. The people I normally would want to talk to on 
this address, don't send mail with UTF8 characters. I run this before 
pulling up pine via shell to read my mail.

A simple shell in my user directory:

grep --color='auto' -P -n "[\x80-\xFF]" Maildir/cur/*
grep  -P "[\x80-\xFF]" Maildir/cur/* >bad
perl ./nukebad.pl

Nukebad is simple:

#!/usr/bin/perl
open(IN,"bad") ; 
while(){
  $filename = substr($