Mailing List Archives
Authenticated access
|
|
|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Condor-users] condor_chirp - How to escape special characters in classads?
- Date: Thu, 05 Jan 2012 23:42:36 +0100
- From: Felix Wolfheimer <f.wolfheimer@xxxxxxxxxxxxxx>
- Subject: Re: [Condor-users] condor_chirp - How to escape special characters in classads?
I assume this is on Unix?
---> Actually, on both Windows and Unix.
condor_chirp set_job_attr MyAttributes '"A String with spaces"'
---> Thanks for the tip. This worked perfectly (I just tried on Unix so
far but will try on Windows later). One thing I still can't do with this
is the following: Let's say I want that the MyAttributes classad has the
value '"foo" "bar"' (including the quotes). The problem now are the two
quotes around the space in the middle. I can again escape them like
this:
condor_chirp set_job_attr MyAttributes '"foo\" \"bar"'
but in this case the classad contains the escape character \ as well.
When I don't use the escape character the classad is simply not set at
all. Is there a way how an arbitrary string can be copied to a classad
just as it is? Let's say I want to have something like this:
condor_chirp set_job_attr JobRdpShell '"C:\Program Files (x86)\RDPTools
\RDPsession.exe -f -s "my shell.exe"'
Where "C:\Program Files (x86)\RDPTools\RDPsession.exe -f -s "my
shell.exe" should be the value of the classad.
Thanks for your help!
Am Mittwoch, den 04.01.2012, 11:47 -0600 schrieb Greg Thain:
> On 01/02/2012 09:29 AM, Felix Wolfheimer wrote:
> > I'm trying to use condor_chirp to set a job classad which contains a
> > lot of spaces quotes and stuff. I found out, that I can escape the
> > outer quotes and something like this:
>
> I assume this is on Unix?
>
> The value of a classad string attribute must be surrounded by double
> quotes. Otherwise, classads treats the value as a classad expression,
> and you get very different behavior than expected. So, you want the
> value in double quotes. Now, you can't just put it in double quotes as
> you'd like, because the shell eats them. You were on the right track by
> escaping the quotes from the shell, bu the problem there is that the
> shell treats the space as an argument separator, and the the
> condor_chirp command then sees the wrong number of arguments. So, try
> this:
>
> condor_chirp set_job_attr MyAttributes '"A String with spaces"'
>
> -greg
>
>
> _______________________________________________
> Condor-users mailing list
> To unsubscribe, send a message to condor-users-request@xxxxxxxxxxx with a
> subject: Unsubscribe
> You can also unsubscribe by visiting
> https://lists.cs.wisc.edu/mailman/listinfo/condor-users
>
> The archives can be found at:
> https://lists.cs.wisc.edu/archive/condor-users/