作者 主題: perl 不能使用 ~ 當作路徑?  (閱讀 2048 次)

0 會員 與 1 訪客 正在閱讀本文。

iopklmm

  • 懷疑的國中生
  • **
  • 文章數: 71
    • 檢視個人資料
perl 不能使用 ~ 當作路徑?
« 於: 2013-05-23 19:13 »

我有一個檔案 A 在 家目錄下

我想要開啟這個檔案 我在open的路徑中有使用到 ~/A 可是都會無法開啟 , 但是我如果打絕對路徑就可以 , 是不是不能使用 ~ 來當作路徑的一部分?

謝謝

rainday

  • 鑽研的研究生
  • *****
  • 文章數: 738
  • 性別: 男
  • enhancing and optimizing
    • 檢視個人資料
Re: perl 不能使用 ~ 當作路徑?
« 回覆 #1 於: 2013-05-23 21:17 »
我想 ~  tilde 是sh才認得的
你可以google expanding tildes in filenames , perldoc 裡是說要做$ENV{HOME}之類的方式取代
cookbook裡有寫到也可以用glob
« 上次編輯: 2013-05-23 21:21 由 rainday »
<0  =_=  Don't learn to hack , hack to learn.

davidju

  • 懷疑的國中生
  • **
  • 文章數: 33
    • 檢視個人資料
Re: perl 不能使用 ~ 當作路徑?
« 回覆 #2 於: 2013-05-24 17:13 »
看原文吧!!

Some shells permit you to use a tilde-prefixed path with cd to use another user’s home directory as a starting point (like cd ~merlyn). This is a function of the shell, not the operating system, and Perl is calling the operating system directly. Thus, a tilde prefix will not work.

 8) 8) 8)

iopklmm

  • 懷疑的國中生
  • **
  • 文章數: 71
    • 檢視個人資料
Re: perl 不能使用 ~ 當作路徑?
« 回覆 #3 於: 2013-05-24 21:02 »
恩 will not work ==