17

I have an exercise to put in a file some data (*conf from some directories) and need to do this in background. I did it and I am wondering what is the meaning of output messages:

[A@localhost tests]$ ls -ld /etc/*conf /usr/*conf > test1_6_conf.txt 2>&1 &

Enter rises this row:

[1] 2533

what does it mean? After other Enter, another messages appear

[A@localhost tests]$
[1]+  Exit 2                  ls --color=auto -ld /etc/*conf /usr/*conf > test1_6_conf.txt 2>&1

What does it mean? What is "Exit 2"?

Enter an check results - seems to be all OK.

[A@localhost tests]$
[A@localhost tests]$ ls -l test1_6_conf.txt
-rw-rw-r--. 1 A A 2641 Nov 22 14:19 test1_6_conf.txt
[A@localhost tests]$ 

I am using CentOS 6.4, Gnome Terminal Emulator.

1 Answer 1

23

What does it mean? What is "Exit 2"?

It is exit status of ls. See man for ls:

   Exit status:
       0      if OK,

       1      if minor problems (e.g., cannot access subdirectory),

       2      if serious trouble (e.g., cannot access command-line argument).

I guess the reason is that you have lots of *conf files in /etc and no *conf files in /usr. In fact ls -ld /usr/*conf; would have had the same effect.

So If I do on my computer ls for an existing file:

ls main.cpp; echo $?
main.cpp
0

And for a file that does not exists:

ls main.cppp; echo $?
ls: cannot access main.cppp: No such file or directory
2

Or as a background process ls for a a file that does not exists:

>ls main.cppp &
[1] 26880
ls: cannot access main.cppp: No such file or directory
[1]+  Exit 2                  ls main.cppp
2
  • O! Thanks. Now I've realized that ls /usr/*conf return 2 since there no any filenames containing "conf".
    – ALZ
    Commented Nov 22, 2013 at 12:59
  • 2
    @ALZ, note that it returns 2 because it cannot find the file called /usr/*conf. And bash is passing it that filename because it can't find files that match that pattern. Better shells like zsh would have returned a "no match" error and not run ls at all. Commented Nov 22, 2013 at 13:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .