文章目錄
- 一、dos歷史學習筆記(後期整合到這裏)
- 二、實戰演練:
- 1、常用DOS命令(1)-- 文件夾管理
- ①、cd(改變當前目錄):
- ②、使用`start cmd`可以在當前目錄下進入cmd
- ③、md/mkdir(倆者一樣,都是創建目錄的意思)
- ④、dir(顯示目錄下的文件)
- ⑤、tree(顯示目錄下的文件--樹)
- ⑥、path(環境變量)
- ⑦、xcopy(複製文件或者目錄)
- 2、常用DOS命令(2)-- 文件管理
- 3、常用dos命令(3)-- 網絡命令
- ①、ping(測試連接網站或者ip)
- ②、ftp(文件傳輸,我還沒有用過)
- ③、net(還未真正測試)
- ④、telnet (未測試)
- ⑤、ipconfig(我主要用來查本機ip地址用,其他很少用)
- ⑥、msg(未測試,後續如果學到再來補充)
- ⑦、arp(未測試,後續學到再來補充)
- 4、常用DOS命令(4)-- 系統管理
一、dos歷史學習筆記(後期整合到這裏)
這個是我所以的dos學習筆記,希望對感興趣的你有所幫助,如有錯誤,還望不吝賜教。如果對你有幫助,希望給我點個贊哈,Thanks♪(・ω・)ノ
學習主要還是靠堅持,如果真的覺得學一個知識,就堅持下去;三天打魚倆天曬網,真的不如躺着歇,刷刷劇,或者玩倆局遊戲。。。
window的dos命令學習筆記 八— bat文件打包成exe程序(實現腳本加密)
二、實戰演練:
1、常用DOS命令(1)-- 文件夾管理
之前的有些前面筆記中學習記錄過了,就不會過多的再寫了。
cd 顯示當前目錄名或改變當前目錄。
md 創建目錄。
rd 刪除一個目錄。
dir 顯示目錄中的文件和子目錄列表。
tree 以圖形顯示驅動器或路徑的文件夾結構。
path 爲可執行文件顯示或設置一個搜索路徑。
xcopy 複製文件和目錄樹。
比如,rd在筆記一寫過,不過多闡述了。就是刪除目錄的命令,可以結合del可以高效的刪除文件,大量文件刪除的時候比較實用。
①、cd(改變當前目錄):
我們用CD命令來改變當前目錄,輸入CD DOS,那麼當前目錄就變成了 DOS,有時我們把改變當前目錄爲一個子目錄叫做進入該子目錄,那麼我們現在就是進入了DOS目錄,再輸入CD TEMP,那麼我們又會進入TEMP目錄了,如何退出TEMP目錄呢? 只要鍵入CD …,回車,我們就可以回到DOS目錄了。在DOS中,這個兩點就表示當前目錄的上一層目錄,一個點表示當前目錄,有時,我們叫上一級目錄爲父目錄。 再輸入CD …,然後回車,我們就回到了C盤的根目錄。
進入一個目錄的子目錄並不需要用CD命令一層一層進入,可以用一行命令完成,比如要進入 WINDOWS目錄下的SYSTEM子目錄,只要輸入CD WINDOWS\SYSTEM就可以了,也可以輸入CD C:\WINDOWS\SYSTEM,如果要回到根目錄,那麼也不必多次輸入CD …來完成, 可以直接輸入CD \,\就表示根目錄。
幾個很常用的特殊字符:
我想找當前目錄的字符,結果找到一個很好的問答總結,參考地址
echo 當前盤符:%~d0
echo 當前盤符和路徑:%~dp0
echo 當前批處理全路徑:%~f0
echo 當前盤符和路徑的短文件名格式:%~sdp0
echo 當前CMD默認目錄:%cd%
寫一個bat命令:
代碼:
@echo off
echo 當前盤符:%~d0
echo 當前盤符和路徑:%~dp0
echo 當前批處理全路徑:%~f0
echo 當前盤符和路徑的短文件名格式:%~sdp0
echo 當前CMD默認目錄:%cd%
pause
運行結果:
因爲我想找當前目錄,所以可以使用:當前盤符和路徑:%~dp0
。
②、使用start cmd
可以在當前目錄下進入cmd
剛剛測試時候,突然找到一個可以直接當前目錄打開cmd的bat,執行:
bat文件寫入這個:
start cmd
執行即可在當前目錄下打開cmd,這樣可以很方便:
點擊執行之後,可以再當前文件夾下打開cmd,我的公司電腦不知道爲什麼不行cd 目錄
進入當我目錄,只可以powershell進入,所以以後這個bat文件可以方便我後續使用cmd。
這樣以後再次需要再cmd中執行各種需要的命令,就不要特意使用cd切換,只需要留着這個腳本即可,或者自己隨時寫一行命令即可,提高一些效率。
③、md/mkdir(倆者一樣,都是創建目錄的意思)
這個和linux的mkdir是一樣的,都是可以創建目錄的意思。
MKDIR [drive:]path
MD [drive:]path
如果命令擴展被啓用,MKDIR 會如下改變:
如果需要,MKDIR 會在路徑中創建中級目錄。例如: 假設 \a 不
存在,那麼:
mkdir \a\b\c\d
與:
mkdir \a
chdir \a
mkdir b
chdir b
mkdir c
chdir c
mkdir d
相同。如果擴展被停用,則需要鍵入 mkdir \a\b\c\d。
mkdir .\a\b\c\d
執行之後,會在當前目錄下遞歸的創建目錄,a\b\c\d
也可以但創建一層。
④、dir(顯示目錄下的文件)
直接查看幫助文檔:
E:\000dos\3筆記三>dir /?
顯示目錄中的文件和子目錄列表。
DIR [drive:][path][filename] [/A[[:]attributes]] [/B] [/C] [/D] [/L] [/N]
[/O[[:]sortorder]] [/P] [/Q] [/R] [/S] [/T[[:]timefield]] [/W] [/X] [/4]
[drive:][path][filename]
指定要列出的驅動器、目錄和/或文件。
/A 顯示具有指定屬性的文件。
屬性 D 目錄 R 只讀文件
H 隱藏文件 A 準備存檔的文件
S 系統文件 I 無內容索引文件
L 解析點 - 表示“否”的前綴
/B 使用空格式(沒有標題信息或摘要)。
/C 在文件大小中顯示千位數分隔符。這是默認值。用 /-C 來
禁用分隔符顯示。
/D 跟寬式相同,但文件是按欄分類列出的。
/L 用小寫。
/N 新的長列表格式,其中文件名在最右邊。
/O 用分類順序列出文件。
排列順序 N 按名稱(字母順序) S 按大小(從小到大)
E 按擴展名(字母順序) D 按日期/時間(從先到後)
G 組目錄優先 - 反轉順序的前綴
/P 在每個信息屏幕後暫停。
/Q 顯示文件所有者。
/R 顯示文件的備用數據流。
/S 顯示指定目錄和所有子目錄中的文件。
/T 控制顯示或用來分類的時間字符域。
時間段 C 創建時間
A 上次訪問時間
W 上次寫入的時間
/W 用寬列表格式。
/X 顯示爲非 8.3 文件名產生的短名稱。格式是 /N 的格式,
短名稱插在長名稱前面。如果沒有短名稱,在其位置則
顯示空白。
/4 用四位數字顯示年
可以在 DIRCMD 環境變量中預先設定開關。通過添加前綴 - (破折號)
來替代預先設定的開關。例如,/-W。
這個我講解一點:比如:
/A 顯示具有指定屬性的文件。
屬性 D 目錄 R 只讀文件
H 隱藏文件 A 準備存檔的文件
S 系統文件 I 無內容索引文件
L 解析點 - 表示“否”的前綴
這種雙屬性的用法,我也是測試了好一會才懂,單個的/A我們一看就懂,但後面更詳細的使用:
比如我如果只想查詢當前目錄下的目錄:
dir /ad
只需要把他們連着寫到參數裏面即可。通過測試,不缺分大小寫。
比如排序的,高級用法應該會用到這些:
⑤、tree(顯示目錄下的文件–樹)
以圖形顯示驅動器或路徑的文件夾結構。
TREE [drive:][path] [/F] [/A]
/F 顯示每個文件夾中文件的名稱。
/A 使用 ASCII 字符,而不使用擴展字符。
- 單寫一個tree(這個只顯示當前地址下的目錄樹)
-
tree /f
這樣纔會把所有的文件也顯示出來。(和Linux的tree有點像)
-
linux的tree命令:
太長沒有截圖截完。
-
tree + 參數 + 目錄
⑥、path(環境變量)
cmd中敲入path回車就會打印出當前的環境變量。
也可以修改當時的cmd環境下的path,比如:敲入path python
這時候環境變量就會變成python,再敲入python不會執行了,
再次證明dos命令是可以使用的。
⑦、xcopy(複製文件或者目錄)
xcopy 拷貝目錄和文件
[適用場合] 在進行連同子目錄一起拷貝時很有用,在拷貝大量文件時比COPY命令
要快得多
[用 法] xcopy [文件名] [目錄] 將指定文件拷貝到指定目錄
xcopy [源目錄] [目的目錄] 將源目錄連子目錄考到目的目錄下
xcopy *.* [目錄] /s 將文件與非空子目錄拷貝到指定目錄
其它常用參數還有: v 拷貝後校驗,會影響速度
e 與s 相似,但即使子目錄是空的也會拷貝。
更多參數:
E:\000dos\3筆記三>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] [/B] [/J]
[/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 在可重新啓動模式下複製網絡文件。
/B 複製符號鏈接本身與鏈接目標。
/J 複製時不使用緩衝的 I/O。推薦複製大文件時使用。
開關 /Y 可以預先在 COPYCMD 環境變量中設置。
這可能被命令行上的 /-Y 覆蓋。
第一次複製過來:
xcopy e:\000dos\2筆記二 .
第二次提示:
第三次/y
參數,不提示直接覆蓋:
2、常用DOS命令(2)-- 文件管理
type 顯示文本文件的內容。
copy 將一份或多份文件複製到另一個位置。
del 刪除一個或數個文件。
move 移動文件並重命名文件和目錄。(Windows XP Home Edition中沒有)
ren 重命名文件。
①、type(查看文本內容)
type 後面直接跟文件地址即可,相對或者絕對路徑都行。
②、copy(複製文件)
將一份或多份文件複製到另一個位置。
E:\000dos\3筆記三>copy /?
將一份或多份文件複製到另一個位置。
COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B]
[+ source [/A | /B] [+ ...]] [destination [/A | /B]]
source 指定要複製的文件。
/A 表示一個 ASCII 文本文件。
/B 表示一個二進位文件。
/D 允許解密要創建的目標文件
destination 爲新文件指定目錄和/或文件名。
/V 驗證新文件寫入是否正確。
/N 複製帶有非 8dot3 名稱的文件時,
儘可能使用短文件名。
/Y 不使用確認是否要覆蓋現有目標文件
的提示。
/-Y 使用確認是否要覆蓋現有目標文件
的提示。
/Z 用可重新啓動模式複製已聯網的文件。
/L 如果源是符號鏈接,請將鏈接複製
到目標而不是源鏈接指向的實際文件。
命令行開關 /Y 可以在 COPYCMD 環境變量中預先設定。
這可能會被命令行上的 /-Y 替代。除非 COPY
命令是在一個批處理腳本中執行的,默認值應爲
在覆蓋時進行提示。
要附加文件,請爲目標指定一個文件,爲源指定
數個文件(用通配符或 file1+file2+file3 格式)。
/y
參數,copy和xcopy都一樣。
③、del(刪除文件)
這個我的筆記一里面有過,就不在寫了,可以參考:
④、move(移動)
這個我的筆記一也寫了,詳情看筆記一:地址
⑤、ren(重命名,可以用來修改文件名後綴)
重命名文件。
RENAME [drive:][path]filename1 filename2.
REN [drive:][path]filename1 filename2.
請注意,你不能爲目標文件指定新的驅動器或路徑。
我這裏結合前面的set /p
就是python的input功能,寫個對文件重命名的bat腳本。
代碼:
@echo off
set /P b=請輸入需要修改的文件名(名字+後綴)
ren %1 %b%
pause
記得保存問bat文件,然後把需要修改的文件拖入這個bat文件:
比如我寫個hello.txt:
echo hello ren
pause
執行完畢:文件名後綴修改成功。
我把這個方法增加到博客:
window10 系統下如何修改文件後綴
3、常用dos命令(3)-- 網絡命令
ping 進行網絡連接測試、名稱解析
ftp 文件傳輸
net 網絡命令集及用戶管理
telnet 遠程登陸
ipconfig顯示、修改TCP/IP設置
msg 給用戶發送消息
arp 顯示、修改局域網的IP地址-物理地址映射列表
說實話,這個部分我真的不會,如果有懂的好的文章或者鏈接,歡迎下方瀏覽,不勝感激。只能後續用到再來補充這些知識了,這幾個我就用過ping
和ipconfig
,其他的真的沒有接觸過,先記錄下來,如果後續用到,學會了再來補充,如果你也沒有用過剩下幾個,可以先把這幾個跳過(當然感興趣可以學習學習)。
①、ping(測試連接網站或者ip)
ping命令看似小小的一個工具,但它帶有許多參數,要完全掌握它的使用方法還真不容易,要達到熟練使用則更是難下加難,但不管怎樣我們還得來看看它的真面目,首先我們還是從最基本的命令格式入手吧!
用法:
ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-c compartment] [-p]
[-4] [-6] target_name
選項:
-t Ping 指定的主機,直到停止。
若要查看統計信息並繼續操作,請鍵入 Ctrl+Break;
若要停止,請鍵入 Ctrl+C。
-a 將地址解析爲主機名。
-n count 要發送的回顯請求數。
-l size 發送緩衝區大小。
-f 在數據包中設置“不分段”標記(僅適用於 IPv4)。
-i TTL 生存時間。
-v TOS 服務類型(僅適用於 IPv4。該設置已被棄用,
對 IP 標頭中的服務類型字段沒有任何
影響)。
-r count 記錄計數躍點的路由(僅適用於 IPv4)。
-s count 計數躍點的時間戳(僅適用於 IPv4)。
-j host-list 與主機列表一起使用的鬆散源路由(僅適用於 IPv4)。
-k host-list 與主機列表一起使用的嚴格源路由(僅適用於 IPv4)。
-w timeout 等待每次回覆的超時時間(毫秒)。
-R 同樣使用路由標頭測試反向路由(僅適用於 IPv6)。
根據 RFC 5095,已棄用此路由標頭。
如果使用此標頭,某些系統可能丟棄
回顯請求。
-S srcaddr 要使用的源地址。
-c compartment 路由隔離艙標識符。
-p Ping Hyper-V 網絡虛擬化提供程序地址。
-4 強制使用 IPv4。
-6 強制使用 IPv6。
這個我很少用,需要的自己再網上搜着學習一下吧。
②、ftp(文件傳輸,我還沒有用過)
將文件傳送到運行 FTP 服務器服務(經常稱爲後臺程序)的計算機以及將文件從該計算機傳出。可以交互使用 Ftp。
格式:
FTP [-v] [-d] [-i] [-n] [-g] [-s:filename] [-a] [-A] [-x:sendbuffer] [-r:recvbuffer] [-b:asyncbuffers] [-w:windowsize] [host]
參數:
-v 禁止顯示遠程服務器響應。
-n 禁止在初始連接時自動登錄。
-i 關閉多文件傳輸過程中的
交互式提示。
-d 啓用調試。
-g 禁用文件名通配(請參閱 GLOB 命令)。
-s:filename 指定包含 FTP 命令的文本文件;命令
在 FTP 啓動後自動運行。
-a 在綁字數據連接時使用所有本地接口。
-A 匿名登錄。
-x:send sockbuf 覆蓋默認的 SO_SNDBUF 大小 8192。
-r:recv sockbuf 覆蓋默認的 SO_RCVBUF 大小 8192。
-b:async count 覆蓋默認的異步計數 3
-w:windowsize 覆蓋默認的傳輸緩衝區大小 65535。
host 指定主機名稱或要連接到的遠程主機
的 IP 地址。
注意:
- mget 和 mput 命令將 y/n/q 視爲 yes/no/quit。
- 使用 Ctrl-C 中止命令。
我找到一個博客寫的還挺詳細的,感興趣的可以去看看,或者網上再多搜索搜索相關知識學習學習。
博客地址:
找到一個例子:
例:
open 90.52.8.3 #打開ip
user iware #用戶爲iware
password8848 #密碼
bin #二進制傳輸模式
prompt
cd tmp1 #切換至iware用戶下的tmp1目錄
pwd
lcd d:\download #本地目錄
mget * #下載tmp1目錄下的所有文件
bye #退出ftp
③、net(還未真正測試)
(1)net share - 查看共享命令
net share ipc$ - 設置ipc /del - 刪除ipc=c: - 設置c盤爲共享
(2)net user - 查看本地的用戶列表
net user 用戶名 密碼 /add - 增加一個用戶
net user 用戶名 /add 或 net user 用戶名 “” /add - 增加一個密碼爲空的用戶
net user 用戶名 /del - 刪除某個用戶名
net user 用戶名 /active:yes(no) - 設置某個用戶的狀態爲啓用(禁用)
(3)net localgroup administrators - 查看管理員組裏的用戶(即權限爲管理員的用戶)
net localgroup administrators 用戶名 /add - 把某個用戶增加到管理員組裏
net localgroup administrators 用戶名 /del - 從管理員組裏刪除某個用戶
注意:
- 增加到某個組裏的用戶必須是已經被創建過的用戶.
- 增加到的組必須爲存在的組.
(4)net start - 查看已經啓動的服務列表
net start 服務名 - 開啓某個服務 注意:要想成功的開啓一個服務,前提是它被停用
了,而不是被禁止
net stop 服務名 - 停止某個服務 注意:停止的服務必須是已經啓動的,而不是已經
停止或是被禁止的
④、telnet (未測試)
telnet命令的一般形式爲:
telnet 主機名/IP
其中“主機名/IP”是要連接的遠程機的主機名或IP地址。
例: telnet 192.168.0.1
如果這一命令執行成功,將從遠程機上得到login:提示符。
使用telnet命令登錄的過程如下:$ telnet 主機名/IP 啓動telnet會話。
一旦telnet成功地連接到遠程系統上,就顯示登錄信息並提示用戶輸人用戶名和口令。如果用戶名和口令輸入正確,就能成功登錄並在遠程系統上工作。在 telnet提示符後面可以輸入很多命令,用來控制telnet會話過程,在telnet聯機幫助手冊中對這些命令有詳細的說明。
⑤、ipconfig(我主要用來查本機ip地址用,其他很少用)
用法:
ipconfig [/allcompartments] [/? | /all |
/renew [adapter] | /release [adapter] |
/renew6 [adapter] | /release6 [adapter] |
/flushdns | /displaydns | /registerdns |
/showclassid adapter |
/setclassid adapter [classid] |
/showclassid6 adapter |
/setclassid6 adapter [classid] ]
其中
adapter 連接名稱
(允許使用通配符 * 和 ?,參見示例)
選項:
/? 顯示此幫助消息
/all 顯示完整配置信息。
/release 釋放指定適配器的 IPv4 地址。
/release6 釋放指定適配器的 IPv6 地址。
/renew 更新指定適配器的 IPv4 地址。
/renew6 更新指定適配器的 IPv6 地址。
/flushdns 清除 DNS 解析程序緩存。
/registerdns 刷新所有 DHCP 租用並重新註冊 DNS 名稱
/displaydns 顯示 DNS 解析程序緩存的內容。
/showclassid 顯示適配器允許的所有 DHCP 類 ID。
/setclassid 修改 DHCP 類 ID。
/showclassid6 顯示適配器允許的所有 IPv6 DHCP 類 ID。
/setclassid6 修改 IPv6 DHCP 類 ID。
默認情況下,僅顯示綁定到 TCP/IP 的每個適配器的 IP 地址、子網掩碼和
默認網關。
對於 Release 和 Renew,如果未指定適配器名稱,則會釋放或更新所有綁定到 TCP/IP 的適配器的 IP 地址租用。
對於 Setclassid 和 Setclassid6,如果未指定 ClassId,則會刪除ClassId。
示例:
> ipconfig ... 顯示信息
> ipconfig /all ... 顯示詳細信息
> ipconfig /renew ... 更新所有適配器
> ipconfig /renew EL* ... 更新所有名稱以 EL 開頭
的連接
> ipconfig /release *Con* ... 釋放所有匹配的連接,
例如“有線以太網連接 1”或
“有線以太網連接 2”
> ipconfig /allcompartments ... 顯示有關所有隔離艙的
信息
> ipconfig /allcompartments /all ... 顯示有關所有隔離艙的
詳細信息
⑥、msg(未測試,後續如果學到再來補充)
將消息發送給用戶。
MSG {username | sessionname | sessionid | @filename | *}
[/SERVER:servername] [/TIME:seconds] [/V] [/W] [message]
參數使用說明:
username 標識指定的用戶名。
sessionname 會話名。
sessionid 會話 ID。
@filename 識別這樣一個文件,該文件含有將所發消息發送到的用戶
名、會話名和會話標識號的列表。
* 給指定服務器上的所有會話發送信息。
/SERVER:servername 要聯繫的服務器(默認值是當前值)。
/TIME:seconds 等待接收器確認消息的時間延遲。
/V 顯示有關執行的操作的信息。
/W 等待用戶的響應,跟 /V 一起有用。
message 要發送的消息。如果沒有指定,發出提示,或者從 stdin
讀取。
⑦、arp(未測試,後續學到再來補充)
E:\000dos\3筆記三>arp /?
顯示和修改地址解析協議(ARP)使用的“IP 到物理”地址轉換表。
ARP -s inet_addr eth_addr [if_addr]
ARP -d inet_addr [if_addr]
ARP -a [inet_addr] [-N if_addr] [-v]
-a 通過詢問當前協議數據,顯示當前 ARP 項。
如果指定 inet_addr,則只顯示指定計算機
的 IP 地址和物理地址。如果不止一個網絡
接口使用 ARP,則顯示每個 ARP 表的項。
-g 與 -a 相同。
-v 在詳細模式下顯示當前 ARP 項。所有無效項
和環回接口上的項都將顯示。
inet_addr 指定 Internet 地址。
-N if_addr 顯示 if_addr 指定的網絡接口的 ARP 項。
-d 刪除 inet_addr 指定的主機。inet_addr 可
以是通配符 *,以刪除所有主機。
-s 添加主機並且將 Internet 地址 inet_addr
與物理地址 eth_addr 相關聯。物理地址是用
連字符分隔的 6 個十六進制字節。該項是永久的。
eth_addr 指定物理地址。
if_addr 如果存在,此項指定地址轉換表應修改的接口
的 Internet 地址。如果不存在,則使用第一
個適用的接口。
示例:
> arp -s 157.55.85.212 00-aa-00-62-c6-09.... 添加靜態項。
> arp -a .... 顯示 ARP 表。
4、常用DOS命令(4)-- 系統管理
- at 安排在特定日期和時間運行命令和程序
- shutdown立即或定時關機或重啓
- taskkill結束進程(WinXPHome版中無該命令)
- tasklist顯示進程列表(Windows XP Home Edition中沒有)
- reg 註冊表控制檯工具
這個我也很少接觸過,我只是用過shutdown,用來定時關機或者重啓。
①、at(windows已經使用schtasks.exe替代)
AT命令是Windows XP中內置的命令,它也可以媲美Windows中的“計劃任務”,而且在計劃的安排、任務的管理、工作事務的處理方面,AT命令具有更強大更神通的功能。AT命令可在指定時間和日期、在指定計算機上運行命令和程序。
我們可以在“開始→運行”中輸入AT命令,下面就來看看AT命令的一些實例分析。
E:\000dos\3筆記三>at
AT 命令已棄用。請改用 schtasks.exe。
不支持該請求
schtasks (任務,window已經替代at)
E:\000dos\3筆記三>schtasks /?
SCHTASKS /parameter [arguments]
描述:
允許管理員創建、刪除、查詢、更改、運行和中止本地或遠程系統上的計劃任
務。
參數列表:
/Create 創建新計劃任務。
/Delete 刪除計劃任務。
/Query 顯示所有計劃任務。
/Change 更改計劃任務屬性。
/Run 按需運行計劃任務。
/End 中止當前正在運行的計劃任務。
/ShowSid 顯示與計劃的任務名稱相應的安全標識符。
/? 顯示此幫助消息。
Examples:
SCHTASKS
SCHTASKS /?
SCHTASKS /Run /?
SCHTASKS /End /?
SCHTASKS /Create /?
SCHTASKS /Delete /?
SCHTASKS /Query /?
SCHTASKS /Change /?
SCHTASKS /ShowSid /?
任務計劃程序(我的是windows10系統)
使用搜索任務,即可出來任務計劃程序,可以設置自動化執行程序。比如每天什麼時間打開某個軟件或者執行一個腳本。
其他隨便看着填寫就行,主要就是操作(可以設置需要執行的腳本和軟件)、條件(什麼時候執行)和設置(設置時間可頻率)
②、shutdown(關機重啓)
E:\000dos\3筆記三>shutdown /?
用法: shutdown [/i | /l | /s | /sg | /r | /g | /a | /p | /h | /e | /o] [/hybrid] [/soft] [/fw] [/f]
[/m \\computer][/t xxx][/d [p|u:]xx:yy [/c "comment"]]
沒有參數 顯示幫助。這與鍵入 /? 是一樣的。
/? 顯示幫助。這與不鍵入任何選項是一樣的。
/i 顯示圖形用戶界面(GUI)。
這必須是第一個選項。
/l 註銷。這不能與 /m 或 /d 選項一起使用。
/s 關閉計算機。
/sg 關閉計算機。在下一次啓動時,
重啓任何註冊的應用程序。
/r 完全關閉並重啓計算機。
/g 完全關閉並重新啓動計算機。在重新啓動系統後,
重啓任何註冊的應用程序。
/a 中止系統關閉。
這隻能在超時期間使用。
與 /fw 結合使用,以清除任何未完成的至固件的引導。
/p 關閉本地計算機,沒有超時或警告。
可以與 /d 和 /f 選項一起使用。
/h 休眠本地計算機。
可以與 /f 選項一起使用。
/hybrid 執行計算機關閉並進行準備以快速啓動。
必須與 /s 選項一起使用。
/fw 與關閉選項結合使用,使下次啓動轉到
固件用戶界面。
/e 記錄計算機意外關閉的原因。
/o 轉到高級啓動選項菜單並重新啓動計算機。
必須與 /r 選項一起使用。
/m \\computer 指定目標計算機。
/t xxx 將關閉前的超時時間設置爲 xxx 秒。
有效範圍是 0-315360000 (10 年),默認值爲 30。
如果超時時間大於 0,則默示爲
/f 參數。
/c "comment" 有關重新啓動或關閉的原因的註釋。
最多允許 512 個字符。
/f 強制關閉正在運行的應用程序而不事先警告用戶。
如果爲 /t 參數指定大於 0 的值,
則默示爲 /f 參數。
/d [p|u:]xx:yy 提供重新啓動或關閉的原因。
p 指示重啓或關閉是計劃內的。
u 指示原因是用戶定義的。
如果未指定 p 也未指定 u,則重新啓動或關閉
是計劃外的。
xx 是主要原因編號(小於 256 的正整數)。
yy 是次要原因編號(小於 65536 的正整數)。
示例:
我常用的是關機功能,重啓偶爾用一次。
比如:
- 十分鐘後自動關機:
shutdown -s -t 600
- 五分鐘後重啓
shutdown -r -t 300
③、taskkill (關閉進程)
查看幫助文檔
E:\000dos\3筆記三>taskkill /?
TASKKILL [/S system [/U username [/P [password]]]]
{ [/FI filter] [/PID processid | /IM imagename] } [/T] [/F]
描述:
使用該工具按照進程 ID (PID) 或映像名稱終止任務。
參數列表:
/S system 指定要連接的遠程系統。
/U [domain\]user 指定應該在哪個用戶上下文執行這個命令。
/P [password] 爲提供的用戶上下文指定密碼。如果忽略,提示
輸入。
/FI filter 應用篩選器以選擇一組任務。
允許使用 "*"。例如,映像名稱 eq acme*
/PID processid 指定要終止的進程的 PID。
使用 TaskList 取得 PID。
/IM imagename 指定要終止的進程的映像名稱。通配符 '*'可用來
指定所有任務或映像名稱。
/T 終止指定的進程和由它啓用的子進程。
/F 指定強制終止進程。
/? 顯示幫助消息。
篩選器:
篩選器名 有效運算符 有效值
----------- --------------- -------------------------
STATUS eq, ne RUNNING |
NOT RESPONDING | UNKNOWN
IMAGENAME eq, ne 映像名稱
PID eq, ne, gt, lt, ge, le PID 值
SESSION eq, ne, gt, lt, ge, le 會話編號。
CPUTIME eq, ne, gt, lt, ge, le CPU 時間,格式爲
hh:mm:ss。
hh - 時,
mm - 分,ss - 秒
MEMUSAGE eq, ne, gt, lt, ge, le 內存使用量,單位爲 KB
USERNAME eq, ne 用戶名,格式爲 [domain\]user
MODULES eq, ne DLL 名稱
SERVICES eq, ne 服務名稱
WINDOWTITLE eq, ne 窗口標題
**說明**
1) 只有在應用篩選器的情況下,/IM 切換才能使用通配符 '*'。 2) 遠程進程總是要強行 (/F) 終止。 3) 當指定遠程機器時,不支持 "WINDOWTITLE" 和 "STATUS" 篩選器。
例如:
TASKKILL /IM notepad.exe
TASKKILL /PID 1230 /PID 1241 /PID 1253 /T
TASKKILL /F /IM cmd.exe /T
TASKKILL /F /FI "PID ge 1000" /FI "WINDOWTITLE ne untitle*"
TASKKILL /F /FI "USERNAME eq NT AUTHORITY\SYSTEM" /IM notepad.exe
TASKKILL /S system /U 域\用戶名 /FI "用戶名 ne NT*" /IM *
TASKKILL /S system /U username /P password /FI "IMAGENAME eq note*"
這個功能和Ctrl + shift + Esc
進入任務管理器,進入管理器找到需要需要關閉的任務或者程序進程,右擊結束任務
即可。
④、tasklist (任務列表)
E:\000dos\3筆記三>tasklist /?
TASKLIST [/S system [/U username [/P [password]]]]
[/M [module] | /SVC | /V] [/FI filter] [/FO format] [/NH]
描述:
該工具顯示在本地或遠程機器上當前運行的進程列表。
參數列表:
/S system 指定連接到的遠程系統。
/U [domain\]user 指定應該在哪個用戶上下文執行這個命令。
/P [password] 爲提供的用戶上下文指定密碼。如果省略,則
提示輸入。
/M [module] 列出當前使用所給 exe/dll 名稱的所有任務。
如果沒有指定模塊名稱,顯示所有加載的模塊。
/SVC 顯示每個進程中主持的服務。
/APPS 顯示 Microsoft Store 應用及其關聯的進程。
/V 顯示詳細任務信息。
/FI filter 顯示一系列符合篩選器
指定條件的任務。
/FO format 指定輸出格式。
有效值: "TABLE"、"LIST"、"CSV"。
/NH 指定列標題不應該
在輸出中顯示。
只對 "TABLE" 和 "CSV" 格式有效。
/? 顯示此幫助消息。
篩選器:
篩選器名稱 有效運算符 有效值
----------- --------------- --------------------------
STATUS eq, ne RUNNING | SUSPENDED
NOT RESPONDING | UNKNOWN
IMAGENAME eq, ne 映像名稱
PID eq, ne, gt, lt, ge, le PID 值
SESSION eq, ne, gt, lt, ge, le 會話編號
SESSIONNAME eq, ne 會話名稱
CPUTIME eq, ne, gt, lt, ge, le CPU 時間,格式爲
hh:mm:ss。
hh - 小時,
mm - 分鐘,ss - 秒
MEMUSAGE eq, ne, gt, lt, ge, le 內存使用(以 KB 爲單位)
USERNAME eq, ne 用戶名,格式爲
[域\]用戶
SERVICES eq, ne 服務名稱
WINDOWTITLE eq, ne 窗口標題
模塊 eq, ne DLL 名稱
注意: 當查詢遠程計算機時,不支持 “WINDOWTITLE” 和 “STATUS”
篩選器。
示例:
TASKLIST
TASKLIST /M
TASKLIST /V /FO CSV
TASKLIST /SVC /FO LIST
TASKLIST /APPS /FI "STATUS eq RUNNING"
TASKLIST /M wbem*
TASKLIST /S system /FO LIST
TASKLIST /S system /U 域\用戶名 /FO CSV /NH
TASKLIST /S system /U username /P password /FO TABLE /NH
TASKLIST /FI "USERNAME ne NT AUTHORITY\SYSTEM" /FI "STATUS eq running"
查詢這個也可以結合管道和find進行查詢:
比如:
E:\000dos\3筆記三>tasklist /M | find "cmd"
cmd.exe 30764 ntdll.dll, KERNEL32.DLL, KERNELBASE.dll,
cmd.exe 35856 ntdll.dll, KERNEL32.DLL, KERNELBASE.dll,
bcryptPrimitives.dll, cmdext.dll,