Thread: Re: PITR on Win32 - Archive and Restore
> Good suggestion, got me thinking- > > Trying out stuff on the command line seems to show a general > "unwillingness" to > work with forward slashed names at all: > > > C:\>cmd /c copy "c:/databases/pgdata/ > pg_xlog/000000010000000000000000" > "c:/databases/pgarchive/000000010000000000000 > 000" > The system cannot find the file specified. > 0 file(s) copied. > > C:\>cmd /c "copy" "c:/databases/pgdata/pg_xlog/000000010000000000000000" > "c:/da > tabases/pgarchive/000000010000000000000000" > 'copy" "c:' is not recognized as an internal or external command, > operable program or batch file. > > C:\>cmd /c "copy "c:/databases/pgdata/pg_xlog/000000010000000000000000" > "c:/dat > abases/pgarchive/000000010000000000000000"" > The system cannot find the file specified. > 0 file(s) copied. > > C:\>cmd /c ""copy" "c:/databases/pgdata/pg_xlog/000000010000000000000000" > "c:/d > atabases/pgarchive/000000010000000000000000"" > '"copy"' is not recognized as an internal or external command, > operable program or batch file. > > whereas of course : > > C:\>cmd /c copy c:\databases\pgdata\pg_xlog\000000010000000000000000 > c:\databa > es\pgarchive\000000010000000000000000 > 1 file(s) copied. > > > Quoting Christian Klemke <Christian.Klemke@t-online.de>: > > > "Copy" is an internal command of the command line shell in Windows. > There is > > no separate executable for it. > > Try "cmd.exe /C copy ...." insteads (see "cmd /?" for further options). > > > > Regards, > > Christian. I tried using copy for a while and gave up...it never got the slashes right. I then replaced with cp that comes with mingw and that works fine. Merlin
Merlin Moncure wrote: > > >I tried using copy for a while and gave up...it never got the slashes >right. I then replaced with cp that comes with mingw and that works >fine. > > > > I don't think that's workable unless we intend to distribute it. Gary's suggestion of using xcopy is probably a good one. I will install MSys and friends on my new Windows machine and play around to see what works, unless someone comes up with a tested solution first. cheers andrew
I wrote: > > I will install MSys and friends on my new Windows machine and play > around to see what works, unless someone comes up with a tested > solution first. > > Experimentation shows that xcopy is just as braindead about slashes as copy is. But quoting the paths with backslashes worked, e.g. system("xcopy \"c:\\foo bar\\baz\" \"c:\\tmp\" /y >nul"); So it appears that we need either to have the paths output with system-dependant slashes, or, perhaps more flexibly, a new escape sequences (%P?) which does system-dependent slashes - that would be a small addition to src/backend/access/transam/xlog.c cheers andrew