Tux

...making Linux just a little more fun!

Talkback:166/lg_tips.html

[ In reference to "2-Cent Tips" in LG#166 ]

Ben Okopnik [ben at linuxgazette.net]


Mon, 7 Sep 2009 08:37:11 -0500

----- Forwarded message from Rob Reid <rreid@nrao.edu> -----

Date: Thu, 3 Sep 2009 22:04:21 -0400
From: Rob Reid <rreid@nrao.edu>
To: ben@linuxgazette.net
Subject: tkb: Re: 2-cent Tip: Conditional pipes
Hi Ben,

I'm glad to see the nitty-gritty of shells and terminals being dealt with in Linux Gazette. One thing that might have been unclear to the reader is that the

LESS=FX less

syntax is (ba|z)sh code for "run less with the LESS variable set to FX for this time only". As you probably know, you could alternatively put

export LESS="-FRX" # The R is for handling color.

in your ~/.profile to have less nicely customized everytime you run it, with less typing.

-- 
Rob Reid      http://www.cv.nrao.edu/~rreid/     1-434-244-6822  
Assistant Scientist at the National Radio Astronomy Observatory
Isn't it a bit unnerving that doctors call what they do "practice?"
  - Jack Handey


Top    Back


Ben Okopnik [ben at linuxgazette.net]


Mon, 7 Sep 2009 09:23:08 -0500

On Mon, Sep 07, 2009 at 08:37:11AM -0500, Rob Reid wrote:

> 
> Hi Ben,
> 
> I'm glad to see the nitty-gritty of shells and terminals being dealt with in
> Linux Gazette.  One thing that might have been unclear to the reader is that
> the
> 
> LESS=FX less
> 
> syntax is (ba|z)sh code for "run less with the LESS variable set to FX for this
> time only".

Lest we forget, KSH (in fact, any Bourne-derived shell) also allows this.

> As you probably know, you could alternatively put
> 
> export LESS="-FRX"  # The R is for handling color.
> 
> in your ~/.profile to have less nicely customized everytime you run it, with
> less typing.

Actually, I find that most people know about the 'export foo=bar' syntax, while relatively few know about the 'temporary' version - and that's a shame, because it's really useful. You can temporarily change the values of certain variables without messing up your environment, e.g.

# Change the editor used to edit 'crontab'
EDITOR=/usr/bin/vim crontab -e
# Set the language and the collation type for a given file
LANG=ru_RU LC_CTYPE=ru_RU xterm -e vi russian_text.koi

If you wanted to print a man page, you could temporarily unset the PAGER variable and get the entire thing:

PAGER= man cat|lpr

You can import variables into programs - e.g.

foo=bar perl -wle'print "My foo is set to $ENV{foo}!"'

Setting proxies, etc. for a given connection isn't a problem either:

HTTP_PROXY=http://foo.bar.com:8080/ lynx http://okopnik.com
-- 
* Ben Okopnik * Editor-in-Chief, Linux Gazette * http://LinuxGazette.NET *


Top    Back