要得到正在執(zhí)行的程序/腳本自身所存放的絕對(duì)路徑,在 PHP 里面可以用 dirname(realpath(__FILE__)) ; C# 則有 System.Windows.Forms.Application.StartupPath ; java 似乎沒(méi)有什么比較直接的方法,只能利用 CodeSource 來(lái)間接獲取 。而在 linux shell 腳本里面如果想得到當(dāng)前腳本文件存放的絕對(duì)路徑,也沒(méi)有太現(xiàn)成的命令可以調(diào)用,不過(guò)可以通過(guò)下面的語(yǔ)句來(lái)獲取:
代碼如下:
baseDirForScriptSelf=$(cd "$(dirname "$0")"; pwd)
echo "full path to currently executed script is : ${baseDirForScriptSelf}"
雖說(shuō)大部分情況下我們并不需要這樣的絕對(duì)路徑來(lái)完成工作;但如果要把多個(gè)腳本、數(shù)據(jù)文件等內(nèi)容打包作為一個(gè)整體來(lái)交付別人使用,又希望不論用戶拷貝到哪個(gè)目錄下執(zhí)行腳本都能夠正確的找到這個(gè)包里面的其他內(nèi)容的話,用這樣的腳本來(lái)自動(dòng)定位包的根目錄應(yīng)該是個(gè)比較魯棒的做法。
更多信息請(qǐng)查看IT技術(shù)專欄