Linux sys vars?
Ben Trussell
azlobo73 at gmail.com
Thu May 12 23:35:42 MST 2011
You can also define your own file descriptors, and use them in
creative and useful ways within your scripts:
http://tldp.org/LDP/abs/html/io-redirection.html
On Thu, May 12, 2011 at 1:52 PM, Dale Farnsworth <dale at farnsworth.org> wrote:
>> Hi,
>>
>> I keep seeing a reference to what looks like two pre-populated variables
>> in shell scripts. Actually this one is in a crontab.
>>
>> Something like this : /home/user-name/directory-name/scriptname.php
>> >/dev/null 2>&1
>>
>> What is the number 1 and 2? Is there others?
>
> Unix and copycats, like Linux use small non-negative integers to identify
> files that may be read from or written to. They are known as file
> descriptors. By convention, the first 3 file descriptors have a special
> meaning. 0 is standard input, 1 is standard output, and 2 is standard
> error.
>
> Normally, each process inherits these 3 file descriptors from its
> parent process but the shell allows you to "redirect" them to
> other files.
>
> Examples:
> echo hello >newfile # Creates the file "newfile" and writes
> # "hello\n" to it.
> echo hello >/dev/null # Writes "hello\n" to /dev/null, where it
> # disappears
> echo hello 2>newfile2 # Creates the file "newfile2" and puts
> # error messages from "echo hello" into it.
> # Since "echo hello" won't output any error
> # messages, "newfile2" will be an empty file.
> echo hello 2>&1 # Redirects the error output of the command
> # into the same file where the standard
> # output goes.
>
> So, "scriptname.php >/dev/null 2>&1" says to redirect the standard output
> of scriptname.php into the bit bucket and then to redirect the standard
> error output to the same place.
>
> -Dale
>
> ---------------------------------------------------
> PLUG-discuss mailing list - PLUG-discuss at lists.plug.phoenix.az.us
> To subscribe, unsubscribe, or to change your mail settings:
> http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss
>
More information about the PLUG-discuss
mailing list