Mandalika's scratchpad [ Work blog @Oracle | Stock Market Notes | My Music Compositions ]

Old Posts: 09.04  10.04  11.04  12.04  01.05  02.05  03.05  04.05  05.05  06.05  07.05  08.05  09.05  10.05  11.05  12.05  01.06  02.06  03.06  04.06  05.06  06.06  07.06  08.06  09.06  10.06  11.06  12.06  01.07  02.07  03.07  04.07  05.07  06.07  08.07  09.07  10.07  11.07  12.07  01.08  02.08  03.08  04.08  05.08  06.08  07.08  08.08  09.08  10.08  11.08  12.08  01.09  02.09  03.09  04.09  05.09  06.09  07.09  08.09  09.09  10.09  11.09  12.09  01.10  02.10  03.10  04.10  05.10  06.10  07.10  08.10  09.10  10.10  11.10  12.10  01.11  02.11  03.11  04.11  05.11  07.11  08.11  09.11  10.11  11.11  12.11  01.12  02.12  03.12  04.12  05.12  06.12  07.12  08.12  09.12  10.12  11.12  12.12  01.13  02.13  03.13  04.13  05.13  06.13  07.13  08.13  09.13  10.13  11.13  12.13  01.14  02.14  03.14  04.14  05.14  06.14  07.14  09.14  10.14  11.14  12.14  01.15  02.15  03.15  04.15  06.15  09.15  12.15  01.16  03.16  04.16  05.16  06.16  07.16  08.16  09.16  12.16  01.17  02.17  03.17  04.17  06.17  07.17 


Friday, May 13, 2005
 
Csh: Arguments too long error

Symptom:
C-shell fails to execute commands with arguments using wildcard characters.
eg.,

% \rm -rf *
Arguments too long

% ls -l | wc
8462 76151 550202

The reason for this failure is that the wildcard has exceeded C-shell limitation(s). The command in this example is evaluating to a very long string. It overwhelmed the csh limit of 1706, for the maximum number of arguments to a command for which filename expansion applies.

Workarounds:
  1. Use multiple commands Or
  2. Use xargs utility
    % \rm -rf *
    Arguments too long
    % ls | xargs rm -rf
    % ls
    %
    Or
    % \rm -rf *
    Arguments too long
    % find . -name "*" | xargs rm -rf
    % ls
    %

From Jerry Peek's Handle Too-Long Command Lines with xargs:
Reference:
Man page of csh

Thanks to Chris Quenelle for suggesting the xargs workaround


Comments:
You can use the xargs command to handle long argument lists.

/bin/ls | xargs rm -rf

I didn't try that, but that's the gist of it.
 
Post a Comment

Links to this post:

Create a Link



<< Home


2004-2017 

This page is powered by Blogger. Isn't yours?