2013-08-22 47 views
0

在Mac OSX(山獅),我有一個shell腳本 「一」:爲什麼「打開」命令在主目錄下運行?

#!/bin/bash 
open -a Terminal b 

其運行另一個shell腳本 「B」 使用終端:

echo `pwd` 

一些有趣的是,沒有我的運行腳本位於哪裏,「b」中的pwd命令總是返回主目錄。

問題:

  1. 爲什麼會出現這種情況?
  2. 如何設置運行環境是不是工作的主目錄(即在pwd到時返回工作目錄)
+0

對不起,你不覺得你的問題是更適合unix.stackexchange.com? – Paolo

+0

[可以Bash腳本告訴它存儲在什麼目錄?]可能的重複?(http://stackoverflow.com/questions/59895/can-a-bash-script-tell-what-directory-its-stored-in) – Oli

回答

1

這將在b可能工作:

echo $(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd) 
1

我是Ubuntu Linux操作系統的用戶,但我敢肯定的CLI是非常兩者相似。無論如何,我相信打開一個新的終端窗口時的默認目錄是你的主目錄。除非您在設置中更改它。這是在「b」打印您的主目錄中的pwd命令的可能原因。

相關問題