[p4] best way to parse output of 'p4 where'?

Ken Williams ken.williams at thomson.com
Thu Feb 1 09:22:05 PST 2007


I don't think -s is helpful in this case, it just puts "info: " before the
line.

The -R or -ztag switch (see `p4 help undoc`) would get the job done if you
don't mind doing a little grepping:

 p4 where "//depot/Path with Spaces" | grep '^... path'

 -Ken

On 2/1/07 8:13 AM, "Oren Shemesh (oshemesh)" <oshemesh at cisco.com> wrote:

> Use the -s switch to tell P4 to make the output script-friendly.
> 
> Regards, Oren. 
> 
> -----Original Message-----
> From: perforce-user-bounces at perforce.com
> [mailto:perforce-user-bounces at perforce.com] On Behalf Of Jay Glanville
> Sent: Thursday, February 01, 2007 3:51 PM
> To: Perforce Users Mailing List
> Subject: [p4] best way to parse output of 'p4 where'?
> 
> Hello all.
> 
> I have a script that needs to determine where a directory exists in the
> current workspace.  Thus, I'm using the 'p4 where' command like this:
>   p4 where //depot/path/to/important/directory/...
> Now, the output of the where command returns the following:
>   - filename in depot notation
>   - filename in workspace notation
>   - filename in local OS notation
> All separated by spaces.  For example, something like this:
>   $ p4 where //depot/...
>   //depot/... //workspace_name/... E:\directory with spaces\...
> 
> The problem I'm having is the fact that the space character is being
> used as the delimiter for the three different return values, especially
> when the directories themselves can contain spaces.
> 
> I'm currently using the character sequence '/... ' as the value
> delimiter, but I'm sure that this isn't the cleanest or best solution.
> 
> What I'd REALLY like to be able to do is query p4 for just the filename
> in local OS notation.  Something like 'p4 where -local //depot/...'.
> 
> What is the best way to determine where a directory exists on the local
> HD within the current workspace?
> 
> Thanks
> 
> JDG
> 
> PS: I'm using Perforce 2005.2.  I don't believe that 2006.2 contains any
> additional parameters for the 'where' command.
> 
> 
> ---
> Jay Dickon Glanville
> 
> _______________________________________________
> perforce-user mailing list  -  perforce-user at perforce.com
> http://maillist.perforce.com/mailman/listinfo/perforce-user
> 
> _______________________________________________
> perforce-user mailing list  -  perforce-user at perforce.com
> http://maillist.perforce.com/mailman/listinfo/perforce-user


More information about the perforce-user mailing list