「このようなファイルやディレクトリはありません」というエラーが表示されていますが、実際に問題のファイルがあります。私は二重引用符を使用しています。ファイルが置かれているディレクトリでコードを実行しています。perlから "〜/ filename"を開くファイルやディレクトリがありません
#!/usr/bin/perl;
use warnings;
use strict;
use diagnostics;
open(FASTA, "<", "~/LDTest.rtf")
これがあっても失敗します:ここで
が私のコードであるtouch ~/LDTest.rtf
cd ~
...スクリプトを起動する前にシェルから実行され、ファイルが存在していることを保証するために、現在のディレクトリ。
行を 'STDERR'にエコーして、それが何であるかを正確に把握し、大文字小文字を区別するファイルシステムを使用している場合に大文字と小文字の違いがあるかどうかを検討します。 (このようなシステムでは 'Foo'と' foo'は同じファイルではありません) –
bashのようなシェルはホームディレクトリに '〜'を展開するので、 '〜/ LDTest.rtf'は'/home/foo/LDTest .rtf'; Perlの 'open'はこれをしません。完全なパスをファイルに渡してみてください。 – ThisSuitIsBlackNot
こんにちは。あなたの応答に感謝します。私はこのケースをチェックしました。違いはありません。私は場所を "/Users/roblogan/LDTest.rtf"に変更しましたが、それは役に立たなかったです。 – Rob