This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Error using cygstart command with option arguments: "cygstart: bad argument"
- From: Brian Dessent <brian at dessent dot net>
- To: cygwin at cygwin dot com
- Date: Sat, 23 Jul 2005 13:24:14 -0700
- Subject: Re: Error using cygstart command with option arguments: "cygstart: bad argument"
- References: <20050723194252.38651.qmail@web30211.mail.mud.yahoo.com>
- Reply-to: cygwin at cygwin dot com
Peter Farley wrote:
> I tried to use cygstart to execute bash with the "-c"
> option to execute a command and then terminate.
> Here's what I get:
>
> $ cygstart bash -c echo Hi There
> cygstart: bad argument -c: unknown option
The problem that you are running into is that you need to tell cygstart
that the -c and following arguments are meant for the child process, and
are not arguments to cygstart itself. '--' is a standard way of doing
this, which indicates to the program that all of the following arguments
should not be interpreted as switches but just regular data. So
"cygstart -- bash -c ..." ought to work.
You will have to be careful with the quoting of the stuff after -c
though. Cygstart is designed to use Windows-native methods to start a
process. If you're using it to start a Cygwin process, and you want to
have an argument with spaces in it (as is the case with any nontrivial
-c) then you will have to be very careful with how you use quotes to
ensure that the Cygwin->Windows->Cygwin conversion of the argv[] works
correctly. It would be much simpler to do something like: rxvt -e bash
-c "echo whatever".
Brian
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/