[求救] 命令列下切換常用子目錄
如題,命令列下切換常用子目錄
從前 dos 時代是有人出過這種小工具的,所以有這需求似乎不用交代
我的狀況是公司的專案,放置的子目錄深度很深
目前的做法: 打開繪圖介面的 finder,慢慢找到內部子目錄,然後按滑鼠右鍵開命令列
但我自己習慣的做法是用專案名打個批次檔
比如 iLife 專案:
touch iLife //建檔
open -a TextEdit iLife //文字編輯檔案
cd /project/iLife //只打一行,切換子目錄;存檔退出
chmod a+x iLife //改變為可執行屬性
iLife //執行,神奇的是不會切換子目錄
. iLife //用另一種方式執行,可以了!!
以上,想請教的是用 . 去執行就可以,怎麼會這樣?
另外這似乎是比較偏命令列的討論,如果跑錯板尚請告知,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 223.137.16.80
※ 文章網址: https://www.ptt.cc/bbs/MAC/M.1435375315.A.451.html
→
06/27 11:32, , 1F
06/27 11:32, 1F
謝謝你開了第一槍
大致搜尋了板上,我以為我問這個是跑錯板
答:沒,我就只有打那麼一行 cd
如果在第一行加入
#!/bin/bash
結果並沒差別
各種 shell 的差異我知道不多,也覺得學下去沒完沒了
所以這問題如果挨罵'你自己不去研究' 我也認了
其實 cd 切換都有成功,只是有一個會退回原子目錄
why? :P
※ 編輯: HuangJC (223.137.16.80), 06/27/2015 11:46:53
推
06/27 11:53, , 2F
06/27 11:53, 2F
→
06/27 11:54, , 3F
06/27 11:54, 3F
原來如此,所以一直都有差別!
挺糟啊,之前我只要發現可以執行,都會懶得打一點
另外,直接執行無法有打一點的效果?
那我乾脆用 alias 組一些變化出來還比較好用
因為我常要切換的子目錄可不只一個..
※ 編輯: HuangJC (223.137.16.80), 06/27/2015 11:59:27
推
06/27 12:08, , 4F
06/27 12:08, 4F
→
06/27 12:08, , 5F
06/27 12:08, 5F
→
06/27 12:08, , 6F
06/27 12:08, 6F
推
06/27 12:11, , 7F
06/27 12:11, 7F
When a script is run using source it runs within the existing shell
懂了後才看懂這句翻譯
一向我把 source 理解成 執行
然後我就奇怪這指令怎麼命名的
source 是 來源
執行? 如果是我設計,指令會取名為 excute
無法理解,所以電腦的英文根本是另一套文化
※ 編輯: HuangJC (223.137.16.80), 06/27/2015 12:18:13
推
06/27 12:16, , 8F
06/27 12:16, 8F
→
06/27 12:18, , 9F
06/27 12:18, 9F
→
06/27 12:18, , 10F
06/27 12:18, 10F
alias 失敗了,因為我的子目錄含空白
後來用 function 做出來了 :)
iLife()
{
cd /Product/i\ Life
}
像這個 iLife function 就是切子目錄到 '/Product/i Life'
那 alias 怎麼下呢? 空白弄死我了 XD
※ 編輯: HuangJC (223.137.16.80), 06/27/2015 12:55:15
推
06/27 13:18, , 11F
06/27 13:18, 11F
加了,在 function 的例子裡有用,在 alias 沒用
→
06/27 13:18, , 12F
06/27 13:18, 12F
→
06/27 13:18, , 13F
06/27 13:18, 13F
→
06/27 13:19, , 14F
06/27 13:19, 14F
symbol link 要小心用啊
我曾想過把所有常見子目錄建在 ~ 目錄上
然後只要一層深度的 cd 就切過去了
但 os 現在會以為我在哪裡?
其他相關相對存取有用嗎?
太複雜了啦...
※ 編輯: HuangJC (223.137.16.80), 06/27/2015 14:25:37
推
06/27 19:47, , 15F
06/27 19:47, 15F
→
06/27 19:47, , 16F
06/27 19:47, 16F
→
06/27 19:47, , 17F
06/27 19:47, 17F
推
06/27 21:43, , 18F
06/27 21:43, 18F
推
06/28 11:48, , 19F
06/28 11:48, 19F