顯示具有 DOS 標籤的文章。 顯示所有文章
顯示具有 DOS 標籤的文章。 顯示所有文章

2016年11月22日 星期二

利用 nbtstat 找電腦名稱


C:\>nbtstat -

顯示通訊協定統計資料和目前使用 NBT (NetBIOS over TCP/IP) 的
TCP/IP 連線。

NBTSTAT [ [-a RemoteName] [-A IP address] [-c] [-n]
[-r] [-R] [-RR] [-s] [-S] [interval] ]

-a (介面卡狀態) 列出指定其名稱的遠端電腦名稱表格
-A (介面卡狀態) 列出指定其 IP 位址的遠端電腦名稱表格。
-c (快取) 列出 NBT 快取的遠端電腦名稱和它們的 IP 位址。
-n (名稱) 列出本機 NetBIOS 名稱。
-r (已解析) 列出由廣播和透過 WINS 解析的名稱
-R (重新載入) 清除和重新載入遠端快取名稱表格
-S (工作階段) 列出有目的地 IP 位址的工作階段表格
-s (階段作業) 列出將目的地 IP 位址轉換成
電腦 NETBIOS 名稱的工作階段表格。
-RR (ReleaseRefresh) 傳送名稱釋放封包到 WINS,然後開始重新整理

RemoteName 遠端的主機電腦名稱。
IP address 以點分隔表示 IP 位址的十進位數。
interval 重新顯示選取的統計資料時,每次顯示之間的暫停間隔秒數。
按 Ctrl+C 鍵可以停止重新顯示統計資料。


C:\>nbtstat -A 192.168.123.2

區域連線:
節點 IP 位址: [192.168.123.15] 範圍識別碼: []

           NetBIOS 遠端電腦名稱表格

       名稱               類型         狀態
    ---------------------------------------------
    SERVER2             <00>  唯一        已登錄
    DOMAINNAME      <00>  群組        已登錄
    SERVER2             <03>  唯一        已登錄
    SERVER2             <20>  唯一        已登錄
    DOMAINNAME      <1e>  群組        已登錄
    ADMIN.KAMANCY <03>  唯一        已登錄
    DOMAINNAME      <1d>  唯一        已登錄
    __MSBROWSE__.<01>  群組        已登錄
    KAMANCY           <03>  唯一        已登錄

    MAC 位址 =  00-50-56-C0-00-01

C:\>nbtstat -n 192.168.123.15

區域連線:
節點 IP 位址: [192.168.123.15] 範圍識別碼: []

           NetBIOS 遠端電腦名稱表格

       名稱               類型         狀態
    ---------------------------------------------
    CLIENT5               <00>  唯一        已登錄
    DOMAINNAME      <00>  群組        已登錄
    CLIENT5               <00>  唯一        已登錄
    DOMAINNAME      <1e>  群組        已登錄

    MAC 位址 = 00-50-56-C0-00-08

C:\>nbtstat -c

區域連線:
節點 IP 位址: [192.168.123.15] 範圍識別碼: []

                  NetBIOS 遠端快取名稱表格

        名稱              類型       主機位址    存留 [秒]
    ------------------------------------------------------------
    SERVER   <55>  唯一            192.168.40.1        500

C:\>nbtstat -r

    NetBIOS 名稱解析及登錄統計資料
    ----------------------------------------------------

    由廣播解析     = 2
    由名稱伺服器解析   = 0

    由廣播登錄   = 27
    由名稱伺服器登錄 = 0

C:\>nbtstat -R
    順利清除和預先載入 NBT 遠端快取名稱表格。

C:\>nbtstat -RR
    已重新整理此電腦所登錄的 NetBIOS 名稱。


補充
Windows 常用網路指令 arp 指令用法arp -a
顯示路由表指令route print


from



2016年11月10日 星期四

使用NET USE連線網路磁碟機



Net use [DeviceName] [ComputerName\Floder] [Password] /user:[UserName]/persistent:YES|NO
Net use X: \\192.168.1.1\ShareFloder PW /user:192.168.1.1\UN /persistent:NO
刪除
Net use [DeviceName] /Delete

[DeviceName]: 指定給網路磁碟機要使用的磁碟代號
[ComputerName\Floder]: 網路磁碟機來源的電腦及分享的資料夾, 電腦名稱可以用IP代入
[Password]: 登入用的密碼
[UserName]: 登入用的帳號
/persistent:YES|NO: 非必要參數; 是否持續性使用設定

--「系統發生 67 錯誤。找不到網路名稱」解決方案--
1. 更新網域控制站上的網路介面卡驅動程式。(這招可留到最後的最後再使用)
2. 如果網路位址轉譯器 (NAT) 安裝,但未正確設定,停用的網際網路通訊協定 (IP) NAT 驅動程式,然後重新啟動電腦。若要執行這項操作,請依照下列步驟執行:
  按一下 [開始],以滑鼠右鍵按一下 [我的電腦],然後按一下內容。
  按一下 [硬體] 索引標籤的 [裝置管理員]。
  按一下 [檢視] 功能表的 [顯示隱藏的裝置]。
  展開 [非隨及播放的驅動程式、 IP 網路位址轉譯器,以滑鼠右鍵按一下,然後按一下 [停用。
  按一下[是]以重新啟動電腦兩次。
3. 紅字與紅字間參數必須空一格.
4. 啟動分享端及來源端的區域網路的內容中新增NetBIOS


連線網路磁碟機:

net use x: \\ComputerName\ShareName "Password" /user:DottedDomain\UserName
x:要對應至本機磁碟的代號
\\ComputerName\ShareName:遠端電腦及分享資料夾名稱
/user:DottedDomain\UserName:連線使用者名稱

例如:
net use z: \\192.168.0.10\sharefolder連線至192.168.0.10的sharefolder對應至本機的z磁碟

# net use z: \\192.168.0.10\sharefolder "test" /user:192.168.0.10\Jeffy連線至192.168.0.10的sharefolder對應至本機的z磁碟,連線時使用"Jeffy"連線密碼為"test"

連線網路磁碟機後,及可以直接切換磁碟機代號進入遠端連線的資料夾,進行copy或其他指令動作,完成任務後再中斷網路磁碟。

中斷網路磁碟機:

net use x: /delete
x:連線的網路磁碟機代號

更詳盡的net use使用方式和參數請見Microsoft Net use



2016年4月25日 星期一

如何使用 DOS 指令將程式關閉



如何使用 DOS 指令將程式關閉

欲使用 DOS 指令將程式關閉的話,會因為不同的作業系統而有不同的作法,下面以關閉 IE 瀏覽器為例進行說明:
  1. Windows NT4 的話,需要安裝 Resource Kit,在 C:\NTResKit 裡有 kill.exe,然後使用
    kill iexplore.exe
  2. Windows 2000 則請安裝支援工具(在Windows 2000 CD的Support\Tools,執行setup.exe )安裝之後,在 C:\Program Files\Support Tools 裡有 kill.exe ,然後使用
    kill iexplore.exe
  3. Windows XP/Windows 2003 請使用內建的 taskkill.exe 指令,且要加上 /im 的參數,如:taskkill /im iexplore.exe


source
http://alexchuo.blogspot.tw/2005/10/dos.html

2015年11月17日 星期二

在DOS模式下備份和刪除整個目錄和檔案 和網芳登入




可用rmdir指令刪除整個目錄下的所有目錄和檔案:
rmdir /s/q d:\temp
其中:
/s 是代表刪除所有子目錄跟其中的檔案。
/q 是不要它在刪除檔案或目錄時,不再問你 Yes or No 的動作。

同時備份目錄和資料夾
xcopy d:\temp C:\test1  /s/a/e 

網路芳鄰設定帳密

net use \\IP /user:ID pass



2015年1月20日 星期二

如何在 Batch 檔取得系統的日期、時間欄位 (第三版)

http://blog.miniasp.com/post/2009/11/03/How-to-get-system-date-time-in-batch-file-part-III.aspx

從 Batch 取得日期時間還真囉唆,每次都要查資料 Copy / Paste 才能寫出計算日期時間的指令碼,最近有有需求要抓到「上一個月」的年份與月份,所以有用到數值運算的指令 ( SET /A ),所以乘機再整理一遍取得日期、時間欄位的程式碼。
取得今天日期 ( 其中 P0 代表「不滿 10 自動補零」的意思 )
REM 取得今天的年、月、日 (自動補零)
SET TodayYear=%date:~0,4%
SET TodayMonthP0=%date:~5,2%
SET TodayDayP0=%date:~8,2%

REM 取得今天的年、月、日 (純數字)
REM 2010/08/03 更新:以下是為了修正 Batch 遇到 08, 09 會視為八進位的問題
IF %TodayMonthP0:~0,1% == 0 (
 SET /A TodayMonth=%TodayMonthP0:~1,1%+0
) ELSE (
 SET /A TodayMonth=TodayMonthP0+0
)

IF %TodayMonthP0:~0,1% == 0 (
 SET /A TodayDay=%TodayDayP0:~1,1%+0
) ELSE (
 SET /A TodayDay=TodayDayP0+0
)

echo 日期 %TodayYear%/%TodayMonth%/%TodayDay%
echo 日期 %TodayYear%/%TodayMonthP0%/%TodayDayP0%
取得上個月的年、月 ( 其中 P0 代表「不滿 10 自動補零」的意思 )
REM 取得上個月的年、月
SET /A LastMonthYear=%TodayYear%+0
SET /A LastMonthMonth=%TodayMonth%-1
SET /A LastMonthMonthP0=%LastMonthMonth%
REM 修正年份與月份的數值
IF %LastMonthMonth% EQU 0 (SET /A LastMonthYear=%thisYear%-1)
IF %LastMonthMonth% EQU 0 (SET LastMonthMonth=12)
IF %LastMonthMonth% LSS 10 (SET LastMonthMonthP0=0%LastMonthMonth%)

echo 日期 %LastMonthYear%/%LastMonthMonth%
echo 日期 %LastMonthYear%/%LastMonthMonthP0%
取得當下時間 ( 時、分、秒、豪秒 )
REM 取得時、分、秒 、豪秒
SET Hour=%NowTime:~0,2%
SET Minute=%NowTime:~3,2%
SET Second=%NowTime:~6,2%
SET /A Millisecond=%NowTime:~9,2%*10

echo 時間 %Hour%:%Minute%:%Second%.%Millisecond%
上述關於取得「上個月」的年、月的重點就在於 Batch 可以提供基本的數學運算。另外對於 %time% 的精準度只有到「百分之一秒」,為了改以表達「豪秒」表達所以我將取得的數字乘以 10 處理。
執行 HELP SET 指令後關於 /A 選項(switch)的說明如下:
/A 指定在等號右方的字串是一個要被運算的數字運算式。您可以用運算式進行簡單的運算,而且支援下列
的運算子 (依照運算優先順序由高到低排列):

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

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