我想通過使用系統命令(或任何其他方式)從perl運行程序。從perl運行linux中的程序
system(「samtools」);
我覺得應該通過這個殼,但它抱怨,不能Exec的「samtools」文件或目錄不存在,當我運行它。我已經嘗試例如
系統其他許多不同的程序( 「velveth」);
它工作正常,但不是這個(samtools)。你之前有沒有遇到過這個問題? 我真的很困惑。
我想通過使用系統命令(或任何其他方式)從perl運行程序。從perl運行linux中的程序
system(「samtools」);
我覺得應該通過這個殼,但它抱怨,不能Exec的「samtools」文件或目錄不存在,當我運行它。我已經嘗試例如
系統其他許多不同的程序( 「velveth」);
它工作正常,但不是這個(samtools)。你之前有沒有遇到過這個問題? 我真的很困惑。
您可以給出該文件位置的完整路徑。
例如:
system("/usr/bin/perl -de 1");
嘗試把Linux命令裏面``字符。將工作以及。
您是否在當前shell中手動修改$path
的samtools
?
由於system
啓動一個新的子shell來運行您的命令,所以如果您的.bashrc
中不存在搜索路徑,您必須自己追加samtools
的搜索路徑。檢查方式:
perl -e 'system("echo \$PATH")'
和
echo $PATH
,看看是否有任何區別。