2008年1月26日 星期六

bash: alarmRun

命令列下的指令真的很好玩
把幾個小指令組合起來就可以很容易達到某些功能了~ :P
#!/bin/sh

declare -i alarm_time=$(date -d "$(date +%D) $1" +%s)
declare -i now_time=$(date +%s)

if [ $alarm_time -le $now_time ]; then
alarm_time=$alarm_time+60*60*24
fi

until [ $now_time -ge $alarm_time ]; do
sleep 1
now_time=$(date +%s)
echo -en "\r現在是 $(date +%T) 鬧鐘設定在 $1"
done

shift

$*

把這樣的檔案存成 alarmRun 在給予 chmod +x alarmRun
這樣就可以
./alarmRun 07:00:00 mplayer alarm.mp3

在早上七點當鬧鐘使用了~ :D

2008年1月14日 星期一

glib - g_build_filename

在利用 glib 做程式開發時有個函式還蠻好用的~
g_build_filename
#include <glib.h>

int main(int argc, char *argv[])
{
gchar *filename = NULL;
filename = g_build_filename("/usr", "share", "pixmaps", "debian-logo.png", NULL);
g_debug("%s", filename);
g_free(filename);
return 0;
}
再搭配
$ gcc -Wall `pkg-config --cflags --libs glib-2.0` -o demo demo.c

g_build_filename 可以把後面接的名稱串接起來自動在名稱跟名稱之間加上 '/' 或是 '\'
端看你開發程式的平台是哪一種 (Windows/Unix)
要注意的是參數最後要以 NULL 結尾還有不使用的話要用 g_free 來把記憶體空間釋放掉

2008年1月7日 星期一

Adobe Flash Player version 9,0,115,0

最近發現到 Adobe Flash Player 在 Linux 上的 Firefox/Iceweasel 的選單介面不再出現亂碼了~
而且介面看起來也變漂亮多了~ 在網址列中輸入 about:plugins 發現使用的 Adobe Flash Player plugin 版本是 9,0,115,0
後來到 http://www.adobe.com/products/flash/about/ 看到 Windows/Mac OS X/Linux 三個平台上面的 flash 都是一樣新的版本~ (至少在寫這篇文章的時候是這樣的)
真是可喜可賀啊~ :-D

新的 Debian 桌面系統~ :-D

這個週末在 jouston 很久以前給我的 LiteON VT200 上面把 Xfce 桌面環境裝起來
原本只有裝上相當精簡的 Debian 4.0 (Etch) 來當做檔案伺服器使用
我拿到的 LiteON VT200 裡面的 CPU 應該是 VIA Eden ESP Processor 400 MHz
然後我自己去買了一條筆記電腦在使用的 256MB DDR333 的記憶體裝上去使用
在設定 XWindow 的過程中發現分享顯示的記憶體要有 32MB 才會正常地在 1280x1024 的解析度上面運作
就這樣家裡多了一台低耗電的 Linux 系統可以使用
同時拿來上網 (Iceweasel)、及時通聊天(Gaim)、打B(PCManX GTK+)、聊天室聊天(Irssi)、聽網路廣播(hiChannel.sh)
使用起來並不會有覺得不方便的地方反而會有一種特別的爽度~ :-D