Post a New Question

computers

posted by .

. Explain the following unexpected result:

$ whereis date
date: /bin/date ...
$ echo $PATH
.:/usr/local/bin:/usr/bin:/bin
$ cat > date
echo "This is my own version of date."
$ ./date
Fri May 22 11:45:49 PDT 2009

  • computers -

    I will annotate each statement for your information.

    1.$ whereis date
    date: /bin/date ...
    2.$ echo $PATH
    .:/usr/local/bin:/usr/bin:/bin
    3.$ cat > date
    echo "This is my own version of date."
    4.$ ./date
    Fri May 22 11:45:49 PDT 2009

    Annotations for line:
    1. "whereis date" tells us where the executable file "date" is located, according to the current $PATH value. The result tells us that the executable file "date" is found in /bin
    2. echo $PATH
    tells us what is the content of the $PATH environment parameter. Each path is separated by a colon ":".
    3. "cat > date"
    takes standard input (stdin) from the keyboard and put the keyed in content into a new file in the current directory called date. The input should be terminated by a control-d, which is not mentioned in the question.
    The file "date" usually has a permission of 644 or 600 (depending on the computer implementation), which means that it is not executable.
    4. ./date
    attempts to execute the file ./date, but it is not executable (by default). Again, depending on the implementation of the system, it may return
    "permission denied", or
    possibly search for the next directory from the $PATH environment variable, which outputs the current date and time.

Respond to this Question

First Name
School Subject
Your Answer

Similar Questions

More Related Questions

Post a New Question