http://qs1969.pair.com?node_id=865799


in reply to OS X troubleshooting help needed - parse filename & open file

LF:

I notice that you're using lc to lowercase the extensions. IIRC, a mac has (or can be configured to use) a case sensitive file system...so "foo.PDF" and "foo.pdf" are two different filenames. That might be (part of?) your problem.

I don't know if you're familiar with File::Spec or not, but it might do the trick for you. It provides a portable method to handle file names and paths. I've not used it much myself, so I can't give it an unqualified endorsement. But it may be worth your while to investigate it.

...roboticus

Replies are listed 'Best First'.
Re^2: OS X troubleshooting help needed - parse filename & open file
by elef (Friar) on Oct 17, 2010 at 13:31 UTC
    Good point, duly noted.
    In this case, I don't think this could be the issue as I the test was done on files with a lower-case extension.

    To be honest, even though I'm sure File::Spec is in principle a better solution than what I'm doing, I'm reluctant to learn how File::Spec works, rewrite the script and then start testing/troubleshooting on all platforms all over again. What I have works on Windows and Linux, I'd be more inclined to just fix the current OS X problems and call it a day... if the problems are easily fixable, that is.

      elef:

      Ah, well, then I'm fresh out of ideas. I have a buddy with a Mac, though, so I'll send him an EMail and see if he might give it a try for you. (No promises, though, as he's a Java/Ruby coder and frequently avoids computers outside of his day job...)

      I also understand what you mean about going back and reworking a bunch of code to insert a module. I'd go for a simpler fix, too, if I find one. But it's handy to know about things like that for future projects, or when your back is against the wall.

      ...roboticus

      Update: Added '/Ruby' and second paragraph.

      elef:

      He ran it and replies:

      tony-******-macbook-pro:~ tony******$ perl --version This is perl, v5.8.8 built for darwin-thread-multi-2level (with 4 registered patches, see perl -V for more detail) <<snip>> tony-******-macbook-pro:~ tony******$ perl m.perl Name "main::FILE" used only once: possible typo at m.perl line 27. Drag and drop a file here: /Users/tony******/Desktop/x.txt Invalid type 'W' in unpack at m.perl line 12, <STDIN> line 1. Now, regarding your concern about extra bytes... plausible: Note the space after x.txt... the square is probably my cursor.

      Notes: (1) I anonymized his post by replacing his last name with asterisks, and (2) He included a screenshot that shows a blank after x.txt, which he alludes to in the last line. So his results agrees with the testing that you and louis.roca performed.

      ...roboticus