SonOfLilit
7/2/2007 5:42:00 PM
This creates some awful situations, like having a file called '-' and
doing ./script * . I'm against it - it's a hack.
Aur Saraf
On 7/2/07, Ronald Fischer <ronald.fischer@venyon.com> wrote:
>
> > It should be mentioned that both File.new and File.open are
> > able to receive file descriptors:
>
> This does not help much, because still I would then need to decide
> at runtime, whether (for example) the number 1 passed via the command
> line of my program, denotes the file descriptor 1 (stdout) or a file
> name "1".
>
> > If you insist on using "-", you might want to have a look on
> > either of the implementations below.
>
> Both implementations are fine, but I never doubted that we can
> implement this explicitly per application. My point was that this
> usage of the "-" has become so common - perhaps because it is
> heavily used in the Gnu world and is built into Perl as well. As
> an example for how it works with the Gnu tools, I present a sketch
> of a bash script:
>
> #!/usr/bin/bash
> # This is file exa1.sh
> ...
> fgrep "$1" /var/mail/log $HOME/mailbox $2
> ...
>
> I have several ways to call it, for example
>
> exa1.sh foo # search in /var/mail/log and mailbox
> exa1.sh bar mailbox.old # search also in mailbox.old
> genmail | exa1.sh baz - # also search in the stdout of genmail
>
> Similar in Perl: If you write
>
> open(RCFILE,$ARGV[3]) # This is Perl
>
> the user can supply on the command line a dash, and the program
> would automatically read stdin for RCFILE.
>
> Since this is such a common usage of the '-', I suggest that
> it should be incorporated into Ruby in a similar way as in Perl.
>
> Ronald
> --
> Ronald Fischer <ronald.fischer@venyon.com>
> Phone: +49-89-452133-162
>
>
>