附註: 奇怪的是,英文版沒有錯誤,可能是因為在翻譯時,被 ET 擄走了,所以才少了兩個字母「et」
愛力克斯的賣寇蒐福特 Blog Alex's Blog, something regarding Microsoft's applications and technologies.
2006年7月28日
SQL Server 2005 線上叢書中文版錯誤更正(1)
依序展開 SQL Server 2005 線上叢書中文版的「安裝 SQL Server╱準備安裝 SQL Server 2005╱SQL Server 2005 準備的如何主題╱如何:停用 NetBIOS over TCP/IP」 ,於步驟 5. 下方的「附註」中,提到:這個程序會停用 nbt.sys 驅動程式。事實上,根本沒有這個檔案,如下圖所示,應該將其修改成:這個程序會停用 netbt.sys 驅動程式。
2006年7月27日
如何得知 ASPNET 帳號的密碼
當您在網頁伺服器上使用 ASP.NET 這個本機帳戶存取遠端資源,可能會發生在遠端電腦上無法正確地驗證,因為遠端電腦上可能沒有相同的 ASP.NET 這個帳號,即使有這個帳號,其密碼也會與本機的不同,若自己重新設定密碼的話,有可能會發生設定的密碼過於簡易,遭人破解,此時可以透過一個綠色的小程式來得知 ASPNET 該帳號的密碼,請按此下載。如何得知 IUSR 與 IWAM 帳號的密碼
使用方式很簡單,就是將壓縮檔解開,進入命令提示字元執行該程式 anup.exe
,就可以得知 ASPNET 的密碼。
範例如下:
相關連結:
2006年7月19日
如何利用批次檔取得今日的日期或時間,甚至是部分的日期或時間
Windows 2000/XP/Server 2003 有兩個未公開的環境變數,可以顯示目前的日期與時間,分別是 %date% 與 %time%,透過這兩個環境變數,管理者可以自行撰寫批次檔(.bat 或 .cmd檔)取得所需部分的日期或時間內容。就讓我們透過下面的範例來看看這兩個變數的內容,並如何搭配
指令取得所需的部分日期或時間內容。
先看看日期變數的內容是什麼:
螢幕輸出:
看到沒?Windows 2000 會先顯示星期,再顯示日期,所以我們在後續取出日期的年、月、日或星期的時候,要特別注意他們的順序。 再來看看時間變數的內容是什麼:
螢幕輸出:
接著我們使用 FOR 指令來把日期的分隔符號「/」以及空白(White Space)去掉,並將其結果顯示在螢幕上(下面的解說是以 Windows XP/Server 2003 為例,如果是 Windows 2000,則請自行舉一反三):
MyDate.bat 的檔案內容如下所示:
----程式開始----
看看執行的結果:
螢幕輸出:
想不到只是透過幾行程式碼就可以去掉日期變數的分隔符號了,相信有不少人看不懂那段程式碼,就讓我簡單地說明一下吧!
/F 是指定將後面 %date% 的環境變數當成檔案來處理,而處理的依據就是在「"tokens=1-4 delims=/ "」這邊。tokens如果按照字面翻譯的話,是權杖的意思,這樣翻不太直覺,在這邊翻成順序可能比較好一些。以這個例子來說,就是要取得順序 1 ~ 4 的字串,那程式怎麼知道這個順序的分法呢?
透過 delims 這個引述的設定,程式就知道要怎麼去分析 %date% 環境變數的順序。在 delims 等號右邊的字元就是用來指定分割順序的依據。以這個例子來說,我們用「/」與「 」(空白,White Space)這兩個分隔符號來分割 %date% 的順序。因此原本 %date% 的內容是 2006/03/07 星期二,在程式來看就變成了:
順序 內 容
﹉﹉ ﹉﹉﹉﹉
1 2006
2 03
3 07
4 星期二
%%a 是說把順序 1 的結果指派給名稱為 %%a 的變數,因此順序 2 的變數名稱就會是 %%b,以此類推,最多可以有 52 個變數,原因如下:變數名稱有大小寫之分,所以 %%a 跟 %%A 不同,且僅能以一個英文字母來命名,所以 26(個字母)× 2(大寫跟小寫 2 種)=52(個)。
DO 後面的括號內容是用來指定所要執行的命令內容,以這個例子來說,就是指定一個名稱為 _MyDate 的變數,它的內容是由 %%a%%b%%c%%d 所構成的。
再來我們看看使用 FOR 指令去掉時間變數之分隔符號的結果:
MyTime.bat 的檔案內容如下所示:
----程式開始----
看看執行的結果:
螢幕輸出:
講了這麼多,您知道該怎麼運用 %date% 與 %time% 環境變數了嗎?
參攷資料:
FOR /F ["options"] %variable IN ("string") DO command [command-parameters]
指令取得所需的部分日期或時間內容。
先看看日期變數的內容是什麼:
C:\>echo %date%
螢幕輸出:
2006/03/07 星期二 <----- Windows XP/Server 2003 的結果
星期二 2006/03/07 <----- Windows 2000 的結果
看到沒?Windows 2000 會先顯示星期,再顯示日期,所以我們在後續取出日期的年、月、日或星期的時候,要特別注意他們的順序。 再來看看時間變數的內容是什麼:
C:\>echo %time%
螢幕輸出:
14:21:57.47
接著我們使用 FOR 指令來把日期的分隔符號「/」以及空白(White Space)去掉,並將其結果顯示在螢幕上(下面的解說是以 Windows XP/Server 2003 為例,如果是 Windows 2000,則請自行舉一反三):
MyDate.bat 的檔案內容如下所示:
----程式開始----
REM 取得日期
FOR /F "tokens=1-4 delims=/ " %%a IN ("%date%") DO (
SET _MyDate=%%a%%b%%c%%d
)
REM 顯示去掉分隔符號後的結果
echo %_MyDate%
----程式結束----看看執行的結果:
C:\>MyDate
螢幕輸出:
20060307星期二
想不到只是透過幾行程式碼就可以去掉日期變數的分隔符號了,相信有不少人看不懂那段程式碼,就讓我簡單地說明一下吧!
/F 是指定將後面 %date% 的環境變數當成檔案來處理,而處理的依據就是在「"tokens=1-4 delims=/ "」這邊。tokens如果按照字面翻譯的話,是權杖的意思,這樣翻不太直覺,在這邊翻成順序可能比較好一些。以這個例子來說,就是要取得順序 1 ~ 4 的字串,那程式怎麼知道這個順序的分法呢?
透過 delims 這個引述的設定,程式就知道要怎麼去分析 %date% 環境變數的順序。在 delims 等號右邊的字元就是用來指定分割順序的依據。以這個例子來說,我們用「/」與「 」(空白,White Space)這兩個分隔符號來分割 %date% 的順序。因此原本 %date% 的內容是 2006/03/07 星期二,在程式來看就變成了:
順序 內 容
﹉﹉ ﹉﹉﹉﹉
1 2006
2 03
3 07
4 星期二
%%a 是說把順序 1 的結果指派給名稱為 %%a 的變數,因此順序 2 的變數名稱就會是 %%b,以此類推,最多可以有 52 個變數,原因如下:變數名稱有大小寫之分,所以 %%a 跟 %%A 不同,且僅能以一個英文字母來命名,所以 26(個字母)× 2(大寫跟小寫 2 種)=52(個)。
DO 後面的括號內容是用來指定所要執行的命令內容,以這個例子來說,就是指定一個名稱為 _MyDate 的變數,它的內容是由 %%a%%b%%c%%d 所構成的。
再來我們看看使用 FOR 指令去掉時間變數之分隔符號的結果:
MyTime.bat 的檔案內容如下所示:
----程式開始----
REM 取得時間
FOR /F "tokens=1-4 delims=:." %%a IN ("%time%") DO (
SET _MyTime=%%a%%b%%c%%d
)
REM 顯示去掉分隔符號後的結果
echo %_MyTime%
----程式結束----看看執行的結果:
C:\>MyTime
螢幕輸出:
14243241
講了這麼多,您知道該怎麼運用 %date% 與 %time% 環境變數了嗎?
參攷資料:
2006年7月14日
要怎麼知道目前 Outlook 所用的 PST 檔案版本是否為 2003 還是 97-2000 的格式呢
2006年7月12日
net 指令的參數
許多 Windows 網路指令以 net 這個字開始。
您可以輸入 net/? 查閱所有可用的 net 指令清單。
可以在指令行輸入 net help 指令 以取得 net 指令的語法說明。例如,要得到 net account 指令的說明,輸入 net help account。
所有 net 指令均接受 /yes 及 /no 選項 (可以縮寫為 /y 及 /n)。/y 選項會自動回答指令產生的任何互動提示 yes,而 /n 回答 no。例如,net stop messenger 通常會提示確認要停止伺服器服務,當 net stop messenger /y 對提示自動回答 yes 時,伺服器服務會關閉。
關於 net send 指令
訂閱:
文章 (Atom)