Re: "ls -al * " not work

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



chloe K wrote:
Hi

My ls command not works  properly
Are there many files problem?

[host]# ls -al |wc -l
55264

[host]# ls -al *.db |more
-bash: /bin/ls: Argument list too long

[host]# ls -al *
-bash: /bin/ls: Argument list too long
[host]# ls -al *.*
-bash: /bin/ls: Argument list too long

Note that this comes from bash, not ls, and it results from expansion of the list to more characters than will fit in the buffer used to pass data to the (ls) command.

The kernel max has been expanded recently, but the bash shell probably has some kind of limit. If you have a lot of name, really long names, you can hit this. There are many ways to get around the problem, the best is not to have everything in one directory ;-)

you can do workarounds with find, xargs, little shell loops, etc:
  ls -a | while read name; do ls -l "$name"; done
if you have to use this type of directory structure you may have to learn other workarounds.

--
Bill Davidsen <davidsen@xxxxxxx>
  "We have more to fear from the bungling of the incompetent than from
the machinations of the wicked."  - from Slashdot


[Index of Archives]     [Current Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]     [Fedora Docs]

  Powered by Linux