ls fails with Argument list too long
- July 26th, 2010
- Write comment
This problem usually occurs when ls is used with a wildcard, like this:
ls *test* | wc -l
Bash first expands the wildcard expression first, and when that list gets too large, the kernel cannot handle it (a limitation of the kernel). So to fix it, use the find command instead, like this:
find . -name "*test*" | wc -l