回答
您的意思是「profile」的具體含義?
如果您的意思是「檢索您的shell通過.profile設置的shell環境變量的值」,那麼是的 - 您可以通過特殊的%ENV
哈希來完成。
如果你的意思是「像在shell中一樣讀取在.profile中設置的實際變量」,這是可能的,但要做到「正確」則需要解析任意shell腳本並清理任何非環境變量賦值, "
。 〜/ .profile中; env`「`並解析輸出
如果您的意思是」爲通過單獨配置文件運行的任何Perl程序提供通用配置「,則需要將代碼添加到這些Perl程序中以讀取此配置文件用於讀取各種配置文件)一些CPAN模塊。
如果你的意思是「提供一個通用的配置,運行沒有這些Perl程序任何特殊代碼來讀取一個單獨的配置文件中的任何Perl程序,排序就像任何shell腳本從shell中獲取.profile的東西一樣「,那麼asnwer就是」可能「。你可以利用PERLOPT
環境變量來提供可以加載特殊模塊的選項(通過-I)cont確定通過其「import()」設置的配置。 儘管有些可行,但我強烈建議不要使用,這似乎是一個可怕的黑客攻擊。
$u=`echo -n ~user`; open F, "<$u/.profile" || die; while(<F>) {print}
如果您有(或其他配置通過設立)一個shell腳本bash的配置值,並希望這樣的生效只是一個程序的一次執行的時間,你可以使用一個子shell:
(source ~/my_bash_file.sh; perl my_perl_script.pl)
可以使用%ENV
哈希(見Perl的特殊變量的指標,perldoc perlvar)訪問的Perl shell環境變量:
my $user = $ENV{USER};
my $home_dir = $ENV{HOME};
實施例:
my_bash_file.sh:
#!/bin/bash
export HOME="/home/nowhere"
my_perl_script.pl:
#!/usr/bin/perl
print "the value of HOME is $ENV{HOME}\n";
當作爲perl my_perl_script.pl
,my_perl_script執行。PL打印:
HOME的值是/ home /醚
當作爲(source ~/my_bash_file.sh; perl my_perl_script.pl)
執行時,所述輸出爲:
HOME的值是/ home /不通
Env::Sourced應該做你所需要的。
use Env::Sourced qw(~/user/profile);
print $ENV{VARAIBLE};
- 1. 有沒有辦法加載配置文件?
- 2. 有沒有辦法在java中加載gz文件?
- 3. 有沒有辦法在JVM中查找加載的類文件?
- 4. 有沒有辦法在Python中重新加載「當前」文件?
- 5. 有沒有辦法在Protractor的配置中定義本地配置文件?
- 6. 有沒有辦法從HTML文件(在Firefox插件main.js文件中)加載AngularJS?
- 7. 有沒有辦法從流中加載Crystal Report 9.0文件?
- 8. 有沒有辦法讓JavaScript文件在AIR中加載另一個文件?
- 9. 有沒有辦法在OpsCenter 6.0.2 Lifecycle Manager配置文件中添加其他可配置設置?
- 10. 有沒有辦法在Perl中模擬內置的require函數?
- 11. 有沒有辦法在javaFX中加載Eclipse RCP插件?
- 12. magento:有沒有辦法使用cron「運行配置文件」?
- 13. Mixpanel:有沒有辦法鏈接到用戶配置文件?
- 14. 有沒有辦法從maven配置執行批處理文件?
- 15. 有沒有辦法用不同的配置文件運行NUTCH?
- 16. 有沒有辦法讓配置「遞歸」?
- 17. 有沒有辦法用PHP配置文件而不是YAML下載Symfony 2?
- 18. 有沒有辦法加載關於分辨率的CSS文件?
- 19. 有沒有辦法不加載jQuery?
- 20. 有沒有辦法在DataSource配置中設置時區爲UTC
- 21. 有沒有辦法在WebStorm中設置項目級配置?
- 22. 有沒有辦法在python中重載+ =?
- 23. 有沒有辦法通過配置文件配置Serilog子記錄器?
- 24. 有沒有辦法加載json文件以及所有其他js文件?
- 25. 有沒有辦法在代碼中而不是在配置文件中設置配置運行時選項?
- 26. 有沒有辦法在Apache中預加載代碼在PHP中?
- 27. xcode 4 - 有沒有辦法在配置文件中回顯內容?
- 28. 有沒有辦法檢查Apache配置文件中是否存在目錄?
- 29. 有沒有辦法在spring配置文件中重新使用<util:list>?
- 30. 有沒有辦法獲得ASP.NET成員資格中的所有配置文件
Perl不是shell解釋器。爲了讓這個問題變得有意義,你需要解釋一下你正在嘗試閱讀的.profile的哪些方面。 – 2010-04-19 20:40:08