2009年9月29日 星期二

Ubuntu 下設定 Hinet 連線

DSL 下
新增一筆
在 Username 跟密碼的地方輸入 Hinet 連線的帳號密碼

Wired 下
新增一筆
IPv4 設定標籤下
Method - Manual
Address - 192.168.1.1
Network - 255.255.255.0
Gateway - 0.0.0.0

重灌 XP 後,修復 Ubuntu Grub

1.利用 Ubuntu Live CD,進入 ubuntu
2.打開終端機,切換到權限到 root 使用者
sudo -i
3.進入 grub
grub
4.找到之前 Ubuntu 所在的分割區
> find /boot/grub/stage1
此時,就會顯示出所在的分割區,如:(hd0,6)
5.設定 Ubuntu 所在的路徑
> root (hd0,6)
6.將 grub 灌入 mbr
> setup (hd0)
如果要將 grub 灌在 linux 的分害區下,,就在 hd0 後面再加上分割區的編號就可以了
7.離開 grub
> quit
8.重開機囉~

2009年9月17日 星期四

Layout XML中使用自訂 styleable 的 namespace 定義方式

在 attrs.xml 中宣告了 styleable 的自訂標籤
如:
<resources>
<declare-styleable name="Custom">
<attr name="position">
<enum name="top" value="0" />
<enum name="bottom" value="1" />
</attr>
</declare-styleable>
</resources>

當在 layout 的 xml 要使用到自訂標籤時,namespace 的宣告方式如下:
xmlns:name="http://schemas.android.com/apk/res/packageName
Sample:
<Framelayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<com.test.custom.ui
xmlns:Custom="http://schemas.android.com/apk/res/com.test.custom"
Custom:position="top" />
</Framelayout>

2009年9月2日 星期三

CMD 命令 - Q - Z 字部

RD - 移除 (刪除) 一個目錄
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path

/S 除了目錄本身之外,一併移除指定目錄裡的所有目錄和檔案。
用於移除樹狀目錄結構。

/Q 安靜模式,有 /S 時,刪除目錄樹結構不再要求確認


RECOVER - 從損壞的磁碟中復原可讀取的資訊
RECOVER [磁碟機:][路徑]檔案名稱
在使用 RECOVER 命令以前,
先查閱\ Windows XP 說明內的連線命令參考。


REM - 在批次檔或 CONFIG.SYS 裡加上備註或說明
REM [comment]


REN - 更改檔案名稱
RENAME [drive:][path]filename1 filename2.
REN [drive:][path]filename1 filename2.

請注意您不能為目的檔案指定新的磁碟機或路徑。


RENAME - 更改檔案名稱
RENAME [drive:][path]filename1 filename2.
REN [drive:][path]filename1 filename2.

請注意您不能為目的檔案指定新的磁碟機或路徑。


REPLACE - 取代檔案
REPLACE [drive1:][path1]filename [drive2:][path2] [/A] [/P] [/R] [/W]
REPLACE [drive1:][path1]filename [drive2:][path2] [/P] [/R] [/S] [/W] [/U]

[drive1:][path1]filename 指定來源檔案。
[drive2:][path2] 指定要取代的檔案的
目錄。
/A 將新檔案加到目地目錄。不能和
/S 或 /U 參數同時使用。
/P 當取代檔案或新增來源檔案時顯示確
認的提示。
/R 取代唯讀與未受保護的檔
案。
/S 取代在目的目錄中所有子目錄
的檔案。不能和 /A 參數同時
使用。
/W 在開始前等待您放入磁片。
/U 只取代 (更新) 比來源檔案早
的檔案。不能和 /A 參數同時使用。


RMDIR - 移除 (刪除) 一個目錄
RMDIR [/S] [/Q] [drive:]path
RD [/S] [/Q] [drive:]path

/S 除了目錄本身之外,一併移除指定目錄裡的所有目錄和檔案。
用於移除樹狀目錄結構。

/Q 安靜模式,有 /S 時,刪除目錄樹結構不再要求確認


SET - 顯示、設定或移除 cmd.exe 環境變數
SET [variable=[string]]

variable 指定環境變數名稱。
string 指定設定給變數的一系列字元。

僅鍵入 SET 而不加上任何參數,可以顯示目前的環境變數。

如果您啟用了擴充命令,SET 命令有以下的改變:

如果執行 SET 命令而且只包含變數名稱,沒有等號或數值的話,
命令會顯示出所有字首符合 SET 命令中指定變數名稱的所有變數
值。例如:
SET P

會列出所有以 \'P\' 為開頭的環境變數。

如果在目前的環境中找不到變數名稱,SET 命令會將 ERRORLEVEL
設為 1。

SET 命令不將等號 (=) 視為變數名稱的一部份。

有兩個新參數已經加到 SET 命令中:
SET /A expression
SET /P variable=[promptString]

/A 指定在等號右方的字串是一個要被運算的數字運算式。您可以用運
算式進行簡單的運算,而且支援下列的運算子 (依照運算優先順序由高
到低排列):

() - 組成一群
! ~ - - 一元運算符
* / % - 數字運算元
+ - - 數字運算元
<< >> - 邏輯位移
& - 位元運算 and
^ - 位元運算 exclusive or
| - 位元運算 or
= *= /= %= += -= - 指定
&= ^= |= <<= >>=
, - 運算式分隔字元

如果您使用了任何邏輯或餘數運算子,您必須將運算式兩邊括上引號。
任何在運算式中非數字的字串會被當作環境變數,並且在使用前會先將
這些環境變數轉換為數字。如果您所指定的環境變數名稱尚未在目前環
境中定義,那麼它的值會被設為 0。這可以讓您用環境變數值來做運算
,而不必打入所有的 % 符號來取得它的值。如果 SET /A 是用指令檔
之外的命令列執行,它會顯示運算式最後的數值。指定運算子需要有個
環境變數在等號的左方。0x 字首在數字前方代表十六進位數字、0b 字
首代表二進位數字或 0 字首代表八進位數字,否則數字值都是指十進位
數字。所以 0x12 就和 18、022 等相同。請注意八進位數字可能容易
弄錯: 像 08 和 09 就不是正確的數字,因為 8 和 9 並不是八進位的
正確數字。

/P 參數讓您設定命令列的使用者輸入變數值。在讀取輸入命令列之前,
顯示指定的 promptString。promptString 可以是空白。

環境變數取代功\能已經有下列增強:
%PATH:str1=str2%

會將 PATH 環境變數展開,取代每個發現的 \"str1\" 與 \"str2\"的擴充結果。
\"str2\" 可以是空白字串,這會從擴充輸出中刪除全部 \"str1\"。\"str1\" 可以
用星號開始,這將會從擴充輸出的開頭開始,對應到從所有第一個發現含有
str1 的項目。

您也可以為擴充功\能指定子字串。
%PATH:~10,5%

這將會擴充 PATH 環境變數,然後只使用擴充結果的第 11 個(位移 10)字元
後的 5 個字元如果長度未指定,將會預設為上次使用的變數值。如果數字(位
移或長度)是負數,使用的數字將會是環境變數的長度加上位移或指定長度。
%PATH:~-10%

將抽出 PATH 變數的最後 10 個字元。
%PATH:~0,-2%

將抽出 PATH 變數的最後 2 個字元。

最後,系統加入了延遲環境變數展開的支援。在預設狀態下,命令展開會啟
用這項支援,但是您可以在 CMD.EXE 用 /V 命令列參數來啟用/停用這個功\
能。 請參看 CMD /?

延遲環境變數展開功\能可用來避開展開功\能限制。這項限制是發生在命令列
讀取過程,不是發生在執行過程。下面的範例說明了立即展開變數時會發生
的問題:
set VAR=before
if \"%VAR%\" == \"before\" (
set VAR=after;
if \"%VAR%\" == \"after\" @echo If you see this, it worked
)

這個例子永遠無法顯示 echo 訊息,因為在兩個 IF 敘述中的 %VAR% 會
在第一個 IF 敘述被讀入時便被展開。這是因為它是邏輯上包含了 IF 的內
部,而內部又是一個複合敘述。 所以在複合敘述內的 IF 實際上是用
\"before\" 和 \"after\" 來比較,而這永遠不會為真。同樣的,下面的例子也
不會作用:
set LIST=
for %i in (*) do set LIST=%LIST% %i
echo %LIST%

這個例子中並不會建立目前目錄中所有檔案的清單,相反的只會將 LIST 變
數設為最後一個找到的檔案。同樣地,這是因為 %LIST% 只有在 FOR 敘述
第一次被讀入時才展開,此時 LIST 變數是空的。所以我們實際執行的 FOR
迴圈是:
for %i in (*) do set LIST= %i

這只是重複的將 LIST 設為最後找到的檔案。

延遲環境變數展開讓您可以用一個不同的字元 (驚嘆號) 在執行時展開
環境變數。如果啟用了延遲環境變數展開,上面的例子可以被改寫如下
而正常作用:
set VAR=before
if \"%VAR%\" == \"before\" (
set VAR=after
if \"!VAR!\" == \"after\" @echo If you see this, it worked
)

set LIST=
for %i in (*) do set LIST=!LIST! %i
echo %LIST%

如果您啟用了命令擴充,有幾個動態環境變數會被展開但是不會出現在 SET
所顯示的環境變數列表中。這些變數的值會每次在這些變數被展開時動態地
重新計算如果使用者用這些變數的名稱來定義變數時,則這個新定義會覆蓋\
以下所列的動態變數:

%CD% - 展開為含目前目錄的字串。
%DATE% - 展開為與 DATE 命令格式相同的目前日期字串。
%TIME% - 展開為與 TIME 命令格式相同的目前時間字串。
%RANDOM% - 展開為一個在 0 和 32767 之間的整數亂數值。
%ERRORLEVEL% - 展開為目前的 ERRORLEVEL 值
%CMDEXTVERSION% - 展開為目前的命令處理擴充功\能的版本號碼。
%CMDCMDLINE% - 展開為執行命令處理器前的原始命令列。


SETLOCAL - 開始批次檔中環境變更的本土化工作
在批次檔中屬於中文版環境的開頭已變更。在 SETLOCAL 之後所做的環境變更
已經送出,ENDLOCAL 必須送出,才能還原到上次的設定值。在到達批次指令的
結尾時,批次指令對每個未處理完成的 SETLOCAL 指令都會發出 ENDLOCAL
的執行指令
SETLOCAL

如果您啟用命令擴充,SETLOCAL 的變更如下:

SETLOCAL 批次命令現在可接受一個選項引數,這個引數可為:
ENABLEEXTENSIONS / DISABLEEXTENSIONS
啟用或停用命令處理擴充功\能。
請用 CMD /? 來查看說明。
ENABLEDELAYEDEXPANSION / DISABLEDELAYEDEXPANSION
啟用或停用延遲環境變數擴充功\能。
請用 SET /? 來查看說明。
這些修正命令作用會持續到對應 ENDLOCAL 命令為止,而不管
它們的設定是否在 SETLOCAL 命令之前。

SETLOCAL 命令將會設定 ERRORLEVEL 的數值,但必須給予一個
引數。兩個有效引數之中如果給了一個,而另一個未給時,它的
數值將變為零。您可以在批次指令檔中使用此命令以決定是否有
可使用的擴充功\能,請使用下列的
語法:
VERIFY OTHER 2>nul
SETLOCAL ENABLEEXTENSIONS
IF ERRORLEVEL 1 回應無法啟用擴充功\能

這在舊版的 CMD.EXE 中可正常運作,因為 SETLOCAL 並不會設定
ERRORLEVEL 值。用了錯誤引數的 VERIFY 命令會將 ERRORLEVEL
值起始為一個非零的值。


SHIFT - 變更批次檔中,可置換參數的位置
SHIFT [/n]

如果您啟用 SHIFT 擴充命令,支援 /n 參數,它告訴 SHIFT 可以從第 n
個引數開始轉移。n 介於 0 和 8 之間。 例如:

SHIFT /2

會將 %3 轉移到 %2,將 %4 轉移到 %3,以此類推。並且不會影響到
%0 及 %1 。


SORT
SORT [/R] [/+n] [/M kilobytes] [/L locale] [/REC recordbytes]

[[drive1:][path1]filename1] [/T [drive2:][path2]]

[/O [drive3:][path3]filename3]

/+n 指定每次開始比較的起始字元

數目 n。 /+3 表示每次比較都從每行的第 3 個字元開始。
少於三個字元的行數會先被核對。

預設情況下會從每行的第一個字元開始比較。
/L[OCALE] locale 用指定數值覆寫系統預設值。
\"\"C\"\" 地區設定會產生最快的核對順序,而且是目前唯一的其他選擇。排序都不會區分英文大小寫。

/M[EMORY] kilobytes 指定排序時主記憶體的使用量記憶體大小,以 KB 為單位。
不可低於160 KB。如果已指定記憶體大小,不論目前可用記憶體有多少,排序時將會使用
您所指定的值。如果您不指定記憶體的話,可以產生最佳效能。
預設狀況下如果符合預設記憶體大小最大值的話,排序會一次執行完成 (沒有暫存檔案),否則排序會分兩次完成(部分排序完成的資料會儲存在暫存檔案中)。
這樣排序和合併所使用的記憶體容量相等。預設最大記憶體大小是90% 的可用主記憶體大小(如果輸入和出都是使用檔案的話),否則只會設定 45% 的可用主記憶體大小。

/REC[ORD_MAXIMUM] 字元指出一個記錄中字元的最大數目 (預設值為 4096,最大值為65535)。

/R[EVERSE] 反轉排序順序; 也就是,排序由 Z 到 A,然後由 9 到 0。

[drive1:][path1]filename1 指定要排序的檔案。如果未指定排序檔案,會將標準輸入排序。指定輸入檔案比將相同的檔案重新導向為標準輸入還要快。

/T[EMPORARY]

[drive2:][path2] 指定要保留排序的工作存放區的目錄路徑,萬一資料不適合放在主要記憶體中的話可以使用。預設值為使用系統暫存目錄。

/O[UTPUT]

[drive3:][path3]filename3 指定排序的輸入要被存放的檔案。如果未指定,資料會被寫入標準輸出中。指定輸出檔案比將標準輸出重新導向到相同的檔案還要快。


START - 啟動獨立視窗來執行指定的程式或命令
START [\"title\"] [/Dpath] [/I] [/MIN] [/MAX] [/SEPARATE | /SHARED]
[/LOW | /NORMAL | /HIGH | /REALTIME | /ABOVENORMAL | /BELOWNORMAL]
[/WAIT] [/B] [command/program]
[parameters]

\"title\" 顯示在視窗標題列上的文字
path 起始目錄
B 啟動應用程式但不建立新視窗。含有 ^C 控制碼的應用程式會
被略過,除非應用程式啟用 ^C 程序,否則 ^Break 是唯一可
以中斷應用程式的方法
I 新環境會使用 cmd.exe 的原始環境,而不是目前的環境。
MIN 視窗最小化
MAX 視窗最大化
SEPARATE 用不同的記憶體空間啟動 16 位元視窗程式
SHARED 用共用的記憶體空間啟動 16 位元視窗程式
LOW 在 IDLE 主要類別中啟動應用程式
NORMAL 在 NORMAL 主要類別中啟動應用程式
HIGH 在 HIGH 主要類別中啟動應用程式
REALTIME 在 REALTIME 主要類別中啟動應用程式
ABOVENORMAL 在 ABOVENORMAL 主要類別中啟動應用程式
BELOWNORMAL 在 BELOWNORMAL 主要類別中啟動應用程式
WAIT 啟動應用程式並等待其結束
command/program
如果這是內部 cmd 命令或批次檔的話,命令處理器會用 /K
參數執行 cmd.exe。這表示視窗會保持到命令執行完成。

如果這不是內部 cmd 命令或批次檔的話,它就是一個程式,
它會以視窗程式或主控台 (DOS) 應用程式的執行方式執行。

parameters 這些是傳給 command/program 的參數。


如果您啟用擴充命令,經由命令列或 START 命令的外部命令執行有以下改變:

可以經由打入檔案名稱的命令來利用檔名連結以啟動非執行檔。(例如 WORD.DOC
會執行和 .DOC 副檔名連結的程式)。請參看 ASSOC 及 FTYPE 命令來了解
如何在指令檔案中建立這些檔案連結。

當執行 32 位元的圖形介面應用程式時,CMD.EXE 並不會等應用程式停止才回到
命令提示。但是如果從指令檔中執行時,則不會有這樣的行為。

當執行一個命令列時,其中第一個字串項是字串 \"CMD \" 且沒有副檔名或路徑指
示,則 \"CMD\" 會被 COMSPEC 環境變數的值所取代。這會避免由目前目錄中
選擇 CMD.EXE

當執行一個命令列時,其中第一個字串項不包含副檔名時,則 CMD.EXE 使用
PATHEXT 環境變數的值來決定尋找哪個副檔名及用什麼順序來尋找。PATHEXT
變數的預設值為:
.COM;.EXE;.BAT;.CMD

請注意這個語法和 PATH 變數相同,且用分號來隔開不同的項目。

當尋找執行檔時,若是任何副檔名都不符合,則會試著尋找是否有符合的目錄名稱。
如果有的話,START 命令會在那個路徑執行檔案管理員。若是從命令列執行,這就相
當於執行 CD /D 到那個路徑。


SUBST - 建立路徑與磁碟機代號之間的關連
SUBST [drive1: [drive2:]path]
SUBST drive1: /D

drive1: 指定您要指定路徑的虛擬磁碟機。
[drive2:]path 指定您要指定給虛擬磁碟機的實際磁碟
機與路徑。
/D 刪除取代的 (虛擬的) 磁碟機。

鍵入 SUBST 而不加任何參數會顯示目前所有虛擬磁碟機的清單。


TIME - 顯示或設定系統時間
TIME [/T | time]

僅鍵入 TIME 而不加上參數,可以顯示目前設定的時間,並且提示您輸入新的時
間。按 ENTER 鍵即可保持原來時間。

如果您啟用擴充命令,TIME 命令將會支援/T 參數,這個參數
會讓命令只輸出目前的時間,而不提示您輸入新時間。


TITLE - 設定命令提示字元的視窗標題
TITLE [字串]

字串 指定命令題示字元視窗的標題。


TREE - 以圖形顯示磁碟機或路徑的資料夾架構
TREE [drive:][path] [/F] [/A]

/F 顯示各資料夾中檔案的名稱。
/A 使用 ASCII 取代延伸字元。


TYPE - 顯示文字檔案的內容
TYPE [drive:][path]filename


VER - 顯示 Windows XP 版本
VER


VERIFY - 告訴 cmd.exe 是否要驗證檔案有沒有正確地寫入磁碟中
VERIFY [ON | OFF]

僅鍵入 VERIFY 而不加上參數,可以顯示目前的 VERIFY 設定。


VOL - 顯示磁碟區標籤和序號 (若有的話)
VOL [drive:]


XCOPY - 複製檔案和樹狀目錄
XCOPY source [destination] [/A | /M] [/D[:date]] [/P] [/S [/E]] [/V] [/W]
[/C] [/I] [/Q] [/F] [/L] [/G] [/H] [/R] [/T] [/U]
[/K] [/N] [/O] [/X] [/Y] [/-Y] [/Z]\\r\\r
[/EXCLUDE:file1[+file2][+file3]...]

source 指定要複製的檔案。
destination 指定位置或者/以及新檔案的名稱。
/A 只複製設定成保存屬性的檔案,不要改變屬性的設定。
/M 只複製設定成保存屬性的檔案,並清除保存屬性。
/D:m-d-y 複製在指定日期當天或之後發生變更的檔案。如果沒有給日期,
只複製那些來源檔案日期比目的檔案日期為新的檔案。
/EXCLUDE:file1[+file2][+file3]...
指定檔案清單字串。每個字串
應該在檔案中的不同行。如果有字串對應到要進行複製的檔案絕
對路徑的任何部分,這個檔案會被排除複製。例如,指定字串
\\obj\\ 或 .obj 的話,會排除所有在 obj 目錄下副檔名是
.obj 的檔案複製。
/P 在建立每個目的檔案時顯示提示。
/S 複製每個目錄及其包含的子目錄,不複製空目錄。
/E 複製每個目錄及其包含的子目錄,也複製空目錄。/S 與 /E
相同,能夠用來修改 /T。
/V 驗證每個新檔案。
/W 在複製之前提示您按鍵繼續。
/C 如果錯誤發生時也繼續複製。
/I 如果目的不存在且複製一個以上的檔案的話,就假設指定的
目的一定是目錄。
/Q 在複製時不要顯示檔名。
/F 在複製時顯示來源及目的檔案的全部檔名。
/L 顯示要複製的檔案。
/G 允許\加密檔案複製到不支援加密的
目的地。
/H 時複製隱藏檔和系統檔。
/R 覆蓋\唯讀檔案。
/T 建立目錄結構,但不複製其中的檔案。不包括空目錄及子目錄。
/T /E 會包括空目錄及子目錄。
/U 只複製已經存在目的位置的檔案。
/K 複製檔案屬性。通常 Xcopy 會重設唯讀的屬性。
/N 用所產生的短檔名來進行複製。
/O 複製檔案所有權及 ACL 資訊。
/X 複製檔案審查設定 (包含 /O)。
/Y 不要提示您確認是否要覆蓋\一個已經存在的檔案。
/-Y 示您確認是否要覆蓋\一個已經存在的檔案。
/Z 在可重新開始的模式中複製網路檔案。

參數 /Y 可以在 COPYCMD 環境變數中預先設定。但可以在命令列中用 /-Y 參數
來覆蓋\原有設定。




轉載自:http://www.csie.ntu.edu.tw/~r91112/myDownload/WEB/CMD.html