Linux console 最熱門的應用程式排行榜. 取自 Top 10 Linux console applications
月份: 2006 年 2 月
Ruby on Rails將程式設計化繁為簡
unzip 解壓多個檔案
unzip 一直以來都只有在解壓單獨檔案, 遇到 bug 才發現, 解壓多檔的語法是不同的.
- 這樣只會解壓第一個match 的 file:
unzip -j -o *.zip
- 這樣子才能解壓多個檔案:
unzip -j -o
\*.zip
GPG Error for apt-get
apt-get 發生 GPG Error 的處理方式.
錯誤訊息
W: GPG error: ftp://www.hk.debian.org unstable Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY F1D53D8C4F368D5D NO_PUBKEY 010908312D230C5F W: You may want to run apt-get update to correct these problems
解決方法:
$ gpg --keyserver wwwkeys.eu.pgp.net --recv-keys F1D53D8C4F368D5D $ gpg --armor --export F1D53D8C4F368D5D | apt-key add - $ gpg --keyserver wwwkeys.eu.pgp.net --recv-keys 010908312D230C5F $ gpg --armor --export 010908312D230C5F | apt-key add - $ apt-get update
感謝 Range 大師告知, 下述兩個步驟即可解決此問題 🙂
$wget http://ftp-master.debian.org/ziyi_key_2006.asc $apt-key add ziyi_key_2006.asc
PHP 截字、斷字專用 function
在寫網頁的時後常會遇到 80 個字要截字, 然後超過 80 字加 "...", 未滿 80 字不加.. 等等之類的問題.
之前用 substr 的寫法如下:
$string = strip_tags($string); // 先清掉 html tag, 以免 html tag 被破壞 $string = mb_substr($string, 0, 80, 'UTF-8'); $string .= (mb_strlen($string, 'UTF-8') > 80) ? '...' : '';
PHP 有支援很方便的 function 可以直接達到此功能.
$string = strip_tags($string); $string = mb_strimwidth($string, 0, 80, '...', 'UTF-8');
在 UTF-8 的環境算字數用 strlen 或 mb_strlen 都不是很準, 所以可以用另一個做法, 算字的寬度, 也是個不錯的做法
echo mb_strwidth($string, 'UTF-8'); // 算字寬度
Perl 文字 / 字串 取代(Regex)
感謝 洪朝貴 老師 寫的 Regular Expression.
老師的教導, 而學生當時沒有好好學習.. 需要用到時才偷偷的溜回去看老師的網頁..
真是慚愧... 慚愧之餘.... 還是趕快把語法記下來.. :p
-
取代法1:
perl -pe 's/<?/<?php/g' 檔名
-
取代法2:
perl -pe 's/<?/<?php/g' action.php > action-new.php
-
取代法3:
perl -i -pe 's/<?/<?php/g' `find . -iname '*htm*'`
取代法3 後面的 find.. 可以改用其它你想改的檔名(ex: 改成 *.php), 以上三個範例都是要將 <? 改成 <?php 的做法..
取代法3 能將所有目錄中.你想取代的檔案都取代到(靠自己多嘗試學習吧!!)
此命令是要將 InnoDB 取代成 MyISM 並將原始檔案備份成 filename.sql.bak
perl -i.bak -pe 's#InnoDB#MyISAM#g' filename.sql