作者 主題: 有辦法進入資料夾後,顯示一段說明嗎?  (閱讀 2507 次)

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

iopklmm

  • 懷疑的國中生
  • **
  • 文章數: 71
    • 檢視個人資料

有什麼辦法可以讓用 ls 進入特定的資料夾後 , 顯示一些公告呢? 就像有些系統 , 使用者剛登入不是會顯示一些訊息嗎?

謝謝

特級大肉腳

  • 憂鬱的高中生
  • ***
  • 文章數: 113
    • 檢視個人資料
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #1 於: 2013-03-11 15:20 »
有一招,在你想要的目錄下放好說明檔。再額外做一個ls同名的執行檔:
[ -f "./.content" ] && cat ./.content
exec /bin/ls $1

(假設原ls的路徑在/bin/ls)
然後在放在原ls的PATH更之前就ok了。
« 上次編輯: 2013-03-11 15:26 由 特級大肉腳 »

iopklmm

  • 懷疑的國中生
  • **
  • 文章數: 71
    • 檢視個人資料
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #2 於: 2013-03-12 21:56 »
方法好像有點太高級了 ....

darkranger

  • 榮譽學長
  • 俺是博士!
  • *****
  • 文章數: 1370
    • 檢視個人資料
    • http://darkranger.no-ip.org
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #3 於: 2013-03-13 09:21 »
方法好像有點太高級了 ....
唔,所以樓主要的是低級的作法....
可以給個方向嗎?

特級大肉腳

  • 憂鬱的高中生
  • ***
  • 文章數: 113
    • 檢視個人資料
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #4 於: 2013-03-13 09:59 »
唔,肉腳推薦的不就是最低級的方法了嗎?= =
所以還有更低級的招數?

Yamaka

  • 俺是博士!
  • *****
  • 文章數: 4913
    • 檢視個人資料
    • http://www.ecmagic.com
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #5 於: 2013-03-13 10:28 »
有一招,在你想要的目錄下放好說明檔。再額外做一個ls同名的執行檔:
[ -f "./.content" ] && cat ./.content
exec /bin/ls $1

(假設原ls的路徑在/bin/ls)
然後在放在原ls的PATH更之前就ok了。

剛剛試了一下
發現會有一個問題
以我的系統來說
ubuntu 10.4 desktop x64

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz

ls 預設是放在 /bin
而且預設 /bin 又會是最先搜尋的路徑...
除非是將系統的 /bin/ls 搬到其他位置
或是改變 $PATH 內的順序
不然直接 ls 預設都只會跑 /bin/ls

特級大肉腳

  • 憂鬱的高中生
  • ***
  • 文章數: 113
    • 檢視個人資料
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #6 於: 2013-03-13 11:02 »
好奇怪,你的/bin位置是在PATH的最後,卻是先搜到/bin。
肉腳的Debian試起來則是正常.....= =
肉腳的PATH:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
肉腳把自己寫的執行檔放在/bin之前的/usr/bin中,看起來能work....


剛剛試了一下
發現會有一個問題
以我的系統來說
ubuntu 10.4 desktop x64

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
$ whereis ls
ls: /bin/ls /usr/share/man/man1/ls.1.gz

ls 預設是放在 /bin
而且預設 /bin 又會是最先搜尋的路徑...
除非是將系統的 /bin/ls 搬到其他位置
或是改變 $PATH 內的順序
不然直接 ls 預設都只會跑 /bin/ls


netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17466
    • 檢視個人資料
    • http://www.study-area.org
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #7 於: 2013-03-13 12:13 »
在 bashrc 裡面設 aliase 如何?

Yamaka

  • 俺是博士!
  • *****
  • 文章數: 4913
    • 檢視個人資料
    • http://www.ecmagic.com
Re: 有辦法進入資料夾後,顯示一段說明嗎?
« 回覆 #8 於: 2013-03-13 13:11 »
在 bashrc 裡面設 aliase 如何?


這招我試了OK  ;D
我這樣寫的

$ vim ~/.bashrc

代碼: [選擇]
(加入這行)
alias ls='[ -f "./.ls-message" ] && cat ./.ls-message ; ls --color=auto'

$ vim .ls-message
代碼: [選擇]
ls-message testing..............

$ source ~/.bashrc
$ ls
ls-message testing..............
.........


-----
不過還有一個問題,就是如果 ls 後面帶路徑
必須要讓前面的測試也能抓到這個路徑
不然都只能在目前所在的路徑抓訊息檔  :D