最新學會兩種用來轉換目錄的新方法:
1.
一般來說我們轉換目錄都會用 cd 指令, 例如我現在 /bin 目錄, 如果要轉到 /etc 目錄, 我會:
cd /etc [enter]
當我在 /etc 目錄要返回 /bin 目錄時, 我可以:
cd - [enter]
而不需要輸入:
cd /etc [enter]
因為 cd - 代表返回之前的目錄
2.
基於以上的例子, 如果由 home 轉到 /bin 再轉到 /etc, 當我輸入:
pushd /bin [enter]
pushd /etc [enter]
我會看見:
/etc /bin ~
如果我輸入:
pushd +2 [enter]
我就會返回 home 目錄.
因為 pushd 指令會 將輸入的目錄儲存在 stack 內, 因此我用 pushd /bin 和 pushd /etc 後,
+0 = /etc
+1 = /bin
+2 = ~
所以 pushd +2 就會返回 home 見錄, 而且 stack 變成:
+0 = ~
+1 = /etc
+2 = /bin
當再次輸入 pushd +2 就會返回 /bin 見錄了.
詳情可以查看 pushd 指令 (man pushd)
2008年9月15日星期一
2008年9月14日星期日
Ubuntu 7.10 本地檔案庫
我有一台很舊的電腦正在用 Ubuntu 7.10. 最近我想為該電腦內 Ubuntu 系統升級, 於是做了一隻 AptOnCD. 誰知道 Package Manager 讀不到該 DVD. 最後只有將所有 deb 檔案複製到 Harddisk 內, 然後再做一個檔案庫:
1. 因為沒有安裝 Apache WWW server, 我便需要先安裝它
2. 在 /var/www 資料夾內建立一個 ubuntu 資料夾 (其實可以使用其他名稱)
3. 在 ubuntu 資料夾內建立一個 local 資料夾 (其實一樣可以使用其他名稱)
4. 將所有 deb 檔案複製到 local 資料夾內
5. 在 /var/www/ubuntu 資料夾內輸入: apt-ftparchive packages local > local/Packages [enter]
6. 完成再輸入 gzip local/Packages [enter]
7. 然後將 deb http://localhost/ubuntu local/ 加到 /etc/apt/sources.lst 內 (也可以用 Software sources 加入)
8. 在 Package Manager 內按 Reload 來更新檔案資料
但是在過程中我發現當檔案名稱有 %3a 字串時便會出現問題 (404 File not found). 後來在網上找到解決辦法: 先用 dpkg-name 為所有檔案名稱有 %3a 字串的檔案改名:
dpkg-name *%3a*[enter]
然後才執行 apt-ftparchive.
P.S.
1. 其實 %3a 就是 ":", 不過我們都知道檔案名稱不可以有 ":", 所以才用 %3a 代替.
2. 在 /var/www 資料夾內, 我們需要用 sudo 指令
1. 因為沒有安裝 Apache WWW server, 我便需要先安裝它
2. 在 /var/www 資料夾內建立一個 ubuntu 資料夾 (其實可以使用其他名稱)
3. 在 ubuntu 資料夾內建立一個 local 資料夾 (其實一樣可以使用其他名稱)
4. 將所有 deb 檔案複製到 local 資料夾內
5. 在 /var/www/ubuntu 資料夾內輸入: apt-ftparchive packages local > local/Packages [enter]
6. 完成再輸入 gzip local/Packages [enter]
7. 然後將 deb http://localhost/ubuntu local/ 加到 /etc/apt/sources.lst 內 (也可以用 Software sources 加入)
8. 在 Package Manager 內按 Reload 來更新檔案資料
但是在過程中我發現當檔案名稱有 %3a 字串時便會出現問題 (404 File not found). 後來在網上找到解決辦法: 先用 dpkg-name 為所有檔案名稱有 %3a 字串的檔案改名:
dpkg-name *%3a*
然後才執行 apt-ftparchive.
P.S.
1. 其實 %3a 就是 ":", 不過我們都知道檔案名稱不可以有 ":", 所以才用 %3a 代替.
2. 在 /var/www 資料夾內, 我們需要用 sudo 指令
訂閱:
文章 (Atom)