in reply to (OT) Fixing Line Endings
If the only way to get scripts onto the box is ftp, then you could look for a "post-upload-hook" feature in your ftpd, or hack one in if it's open source. Then you could try some heuristics (does the file look like text, does it have a file extension suggesting it is a script, etc) and do the CRLF->LF conversion if the heuristics recommend it.
Actually - why not a kernel hack? Just map "foo\r" -> "foo" in the exec codepath. You'll lose the ability to run scripts with an interpreter of such a name, but that seems a small loss.
<rummages> There's some string manipulation in linux/fs/binfmt_script.c to find and launch the shebang. Just add a:
just after the strcpy (interp, i_name); in the load_script function and Bob's your Auntie's live-in lover. Possibly.if(interp(strlen(interp)-1) == '\r') { interp(strlen(interp)-1) = '\0'; }
|
---|
In Section
Seekers of Perl Wisdom