in reply to Re^6: Bugs in File::Find on Windows
in thread Bugs in File::Find on Windows

I'm confused. Why would you use chdir("C:\\testdir") to change the dir on D:? Do chdir("D:\\testdir") (absolute path) or chdir("D:testdir") (path relative to the current dir on D:). What am I missing?

Replies are listed 'Best First'.
Re^8: Bugs in File::Find on Windows
by liverpole (Monsignor) on Feb 16, 2007 at 13:24 UTC
    Excuse me if I misunderstood you.  I thought that's what you were trying to do when you said (above) to do:

    To change the current dir of a drive without changing the current drive:

    my $drive = substr(getcwd(), 0, 2); chdir('C:\\'); chdir($drive);

    It seems like you were trying to change directory based on the 'C:\\' path, and then change drives (eg. to 'D:\\').  Maybe you meant that as 3 separate (unrelated) commands?  In which case, sorry, but it wasn't clear to me what you were trying to do.


    s''(q.S:$/9=(T1';s;(..)(..);$..=substr+crypt($1,$2),2,3;eg;print$..$/

      No, it's one command.

      DOS:

      >cd E:\ >cd c: C:\Work >cd c:new >cd E:\ >cd c: C:\Work\New

      Perl equivalent:

      print(getdcwd(), "\n"); # cd -> E:\ print(getdcwd('c:'), "\n"); # cd c: -> C:\Work { # cd c:new my $drive = substr(getcwd(), 0, 2); chdir('c:new'); chdir($drive); } print(getdcwd(), "\n"); # cd -> E:\ print(getdcwd('c:'), "\n"); # cd c: -> C:\Work\New

      cd will not change the current drive.
      chdir will.
      I'm showing how to change the working dir on a drive without changing to that drive, like cd does.