影魔法Dos(持續更新)

影魔法Shell與Dos

*跳轉到文章結尾* 原文鏈接:https://www.cnblogs.com/Asterism-2012/p/10049115.html

Dos

真正的黑客會用自己的行爲去貫徹它的精神。而不只是把黑客這兩個字時時刻刻掛在嘴邊。如果你遇到這樣的人,請記住,他不配稱爲黑客。

目錄

Dos部分

DOS

寫在前面

Dos是我的鐘愛,在我學習之前曾經聽聞這是不值得學習的東西。我想,我想試試看。我會自己來判斷,但是事到如今,我依舊不後悔。但入門DOS 之前 要想明白 爲什麼,怎麼做。準備要花費多少時間。

用兩句話講一點點dos的歷史,DOS曾經是獨立的磁盤操作系統。後來被收購後,內嵌於微軟的windows系統中。但是在windows98與win-me之後的版本中之後,已經移除了真正的dos,我們看到的cmd命令提示符是windows爲我們虛擬的,它保留了dos的絕大部分功能。

我們現在也可以在網絡上下載dos系統進行學習,不過,我個人覺得不是特別有必要。因爲學習的目的是爲了在瞭解歷史的同時能夠保證用於實踐,而從遠古的各個版本更迭至今,很多命令已經不復使用。
除非如果你實在有興趣,或是有一些特殊的目的。
目前來說,我們完全可以使用windows系統進行學習dos的內容。

  • 在學習DOS 接觸的第一本完整的書籍是《DOS Programmer’s Reference, 4thEdition》(《DOS程序員參考手冊》第四版),裏面有這樣一句話:

如果你已做了很長時間的編程工作,就會明白:僅僅將程序代碼敲入計算機並保證它無錯誤,也會消耗大量的時間。這樣的經驗同樣適用於本書中的程序代碼。儘管讀者可以將書中所包含的程序全部敲入機器中,但完成此工作也得耗費幾天的時光。而要改正敲入的錯誤,則又會花費更長的時間。如果讀者時間富裕,那就沒什麼好說的;否則,可考慮購買本書所配的程序附盤

這段話的意思是,完全的自主學習可能是缺乏一些效率的。要掌握好的學習方法。

  • 相關的學習鏈接:

《DOS程序員參考手冊(第四版)》全書博客收錄

《DOS命令學習(從入門到精通)》 博客

DOS的啓蒙

一、Dos操作系統也就是磁盤操作系統 Disk operating system 簡稱Dos.

  • 命令操作系統與視窗操作系統的概念
  • 可以啓動計算機:核心啓動程序,通過這三個文件就可以直接啓動計算機到dos狀態。
    1. io.sys
    2. msdos.sys
    3. command.com
  • 通過命令管理計算機:命令
    1. 內部命令,直接使用,(包含在command.com
    2. 外部命令,不能直接使用,需要調用內存(不包含在command.com

目前廣泛使用的MS-Dos是微軟公司買下Dos專利權後命名的,MS-Dos前身是Seattle computer products 公司於1980年推出的86-Dos.微軟公司在1981年買下了86-Dos的專利,經修理,擴充後更名爲MS-Dos.即1981年推出的MS-Dos V1.0版.

自從DOS在1981年問世以來,版本就不斷更新,從最初的DOS1.0升級到了最新的DOS8.0(Windows ME系統 ),純DOS 的最高版本爲DOS6.22,這以後的新版本DOS都是由Windows系統所提供的,並不單獨存在。下 面的講解所使用的DOS爲Windows98 4.10.2222A的DOS7.0系統。

1)常見的DOS有兩種:
IBM公司的PC-DOS和微軟公司的MS-DOS,它們的功能、命令用途格式都相同,我們常用的是MS-DOS。
MS-Dos與PC-Dos本質上並沒有太大區別,而且命令是基本兼容.

2)Dos的啓動
DOS的核心啓動程序有Boot系統引導程序、IO.SYS、MSDOS.SYS和COMMAND.COM。它們是構成DOS系統最基 礎的幾個部分,有了它們系統就可以啓動。如果你安裝了WIN98,在電腦啓動時按住Ctrl不放,出現啓動選擇菜單,選擇5"Command Prompt Only"即 可進入DOS方式。
目前我們常用的操作系統有windows 9x/Me,NT,2000等,都是可視化的界面。在這些系統之前的人們使用 的操作系統是DOS系統。DOS系統目前已經沒有什麼人使用了,但是dos命令卻依然存在於我們使用的 windows系統之中。大部分的DOS命令都已經在Windows裏變成了可視化的界面,但是有一些高級的DOS命 令還是要在DOS環境下來執行。所以學習命令行對於我們熟練操作Windows系統是很有必要的。
不同的操作系統要用不同的命令進入命令行界面。在Win9x/Me的開始菜單中的運行程序中鍵入"command"命令,可進入命令行界面。
在Win2000/NT的開始菜單中的運行程序中鍵?quot;cmd"命令,可進入命令行界面.
Dos的啓動包括冷啓動與熱動[Ctrl+Alt+Del]或[Reset鍵].[Ctrl+Alt+Del]熱啓動與冷啓動的最大區別就是熱啓動下, 電腦不進行內存芯片檢測.[Reset鍵]熱啓動與冷啓動的最大區別就是熱啓動下不須重開電源,呵呵.

二、文件和文件目錄
Dos系統規定:一個文件的文件名由主文件名和擴展文件名兩部分組成.
1)文件名命名

主文件名由1-8個合法字符組成;擴展名由1-3個合法字符組成.擴展名可略.
2)組成文件名的字符

大小寫英文字母 數字 漢字 一些特別符號: ! @ # $ % ^ & - _ 等等

3)Dos保留字符與Dos保留設備名均不能用於Dos文件名命名
保留字符名
*與?  文件通配符

與<  操作重定向
,   並列參數分隔符
.  擴展名前導符
:  磁盤定義符
空格  命令-參數-參數分隔符
=   賦值符

  • copy命令連接符
    \   目錄路徑分隔符
    /  DOS命令開關前導符
     |  和“” 也是

保留設備名(由於計算機本身使用,所以不能用)
com 控制檯(鍵盤/顯示器)
PRN 第一併行通信口/打印機
LPT1 第一併行通信口/打印機
LPT2 第一併行通信口/打印機
LPT3 第一併行通信口/打印機
NUL 空文件

三、文件通配符
Dos系統提供了兩個文件通配符"“和”?".均可用於主文件名和擴展文件名.
"
" 表示在該文件名(主文件名和擴展文件名)中代表任意個字符;
“?” 表示在文件名中代表該字符位置的任意一個字符.
. 代表所有文件.
eg:

  1. a*.txt 主文件名爲a打頭,擴展名爲txt的所有文件;
  2. ade?.* 主文件名爲ade打頭,不超過四個字符的所有文件;
  3. ?a*.* 主文件名第二字符爲a的所有文件(包括任何擴展名和無擴展名的文件).
    在Dos文件操作命令中,有些命令不允許使用文件通配符,如最常用的TYype命令,有些命令使用
    通配符會引起亂碼,如Rename 命令.所以使用過程中必須特別注意.

四、文件屬性
system 系統屬性 (S) 表示該文件爲Dos系統文件;
read only 只讀屬性 ® 表示該文件只能只讀,而不能刪除或修改;
hidden 隱藏屬性 (H) 表示該文件在一般顯示命令下不顯示文件名;
arehive 歸檔屬性 (A) 表示該文件從上一次修改後又修改過.

五、目錄結構
1)DOS 的文件目錄採用樹形目錄結構.簡稱樹形結構.
它是在DOS2.0以上版本,爲了改善文件管理,提高速度,而採用的一種目錄體系.
最頂一層叫做根目錄,它在格式化磁盤時由DOS建立的目錄,用"“表示.
在根目錄中可以存放文件,也可以存放其它文件名,這個目錄名叫做跟目錄的子目錄.每個目錄裏存放的文件個數和目錄個數不限(只要你有足夠的磁盤空間).
2)路徑是在連接目錄到所需子目錄之間的一串目錄名序列,各目錄名之間用”“連接.
例如:
要到子目錄ade3所走的路徑表示:
\ade1\ade2\ade3
說明: 上面第一左斜杆”“表示根目錄,其後的”“是間隔符.
3)樹形目錄結構的特點:
A、同一個字目錄不能有同名文件,不同字目錄中可以有通明文件;
B、一個磁盤只有一個根目錄.根目錄沒有目錄名,用”“來表示.例如: C:>A表示C盤根目錄.
C、子目錄命名規則與文件名相同,但子目錄名一般不用擴展名.子目錄名不能與同級文件名重複.
D、每個子目錄下都有兩個特殊的文件目錄項:第一個是”.",內含子目錄本身的目錄信息;第二個是"…",內含上一級目錄的信息.這兩個目錄項是在建立目錄時自動建立的.不能刪除.

六、路徑PATH
1)路徑是指從根目錄或當前目錄到所要訪問對象(文件或目錄)所在目錄所經過的通道組合.
路徑可以分爲絕對路徑與相對路徑兩種.
絕對路徑 有從根目錄到指定文件或目錄所經過的一組子目錄名錶示,必須以根目錄符號""開始.
例如 \ade1\ade2\ade3
相對路徑 由從當前目錄到指定文件或目錄所經過的一組子目錄名錶示.
例如 ade1\ade2\ade3

2)文件標識
由於DOS採用樹形文件目錄結構允許多個同名文件存在不同的子目錄,使用時必須用文件標識確定對哪一個文件進行操作.
文件標識有 符盤 路徑和文件名三部分組成 即[<盤符>:][<路徑>]<文件名>

七、文件標示符
DOS文件標示符符可以看作是文件名的擴展,它是在文件名前邊加上磁盤標識符和路徑信息,進一步指明文件存儲的具體位置。
格式:[<盤符>:][<路徑>][<文件名>][.<文件擴展名>]

八、DOS命令狀態提示符和盤符約定
DOS命令狀態有一個狀態提示標記,這個標記就是位於屏幕當前行左部的大於號。
例如: C>_
其中“>”號前面的字母指明“驅動器名”或“當前驅動器名”或“盤符”。
注:約定軟盤驅動器名用字母A、B標識,硬盤用字母C~Z標識。如果機器上只有一個軟盤驅動器,就用字母A標識。

九、內部命令與外部命令
1)內部命令是常駐內存的處理命令,它集中在根目錄下的Command.com文件裏,電腦每次啓動時都會將這個文件讀入內存,也就是說,在電腦運行時,這些內部命令都駐留在內存中,用dir命令是看不到這些內部命令的。
2)外部命令是以獨立文件形式存儲在磁盤上的程序。每一個外部命令對應一個可執行文件。所有擴展名爲.com .exe .bat 的文件都可被視爲外部命令。外部命令不常
駐內存,只有電腦需要時才被調入內存使用。

十、DOS命令格式
DOS命令格式:
<命令字>︼[<文件標識>]︼[<開關參數1>]︼[<開關參數2>]︼[<開關參數3>]…
說明“…"三點 表示可重複項;“<命令字> ”包括[驅動器:][PATH][Filename]

DOS命令格式中,用方括號[]括起來的內容,表示它是可以先擇項,用戶可以根據需要可以不使用它。用尖括號< >括起來的內容,表示它是必選項,用戶根據需要填寫相應的信息。
[驅動器:][路徑]是指明“命令”所在的位置,對於內部命令可以省略,對外部命令需要根據不同情況確定是否指明。
DOS規定:一個命令行的字符數不能超過127個字符(以前允許長度不能超過254個字符)。命令字、文件標識和開關參數之間必須用空格分開(一個空格與多個空格的作用是相同的);開關參數用“/”作前導符,開關參數順序不影響執行執行結果,參數對有些命令是必選項,而對另一些命令可有可無。用“ENTER”結束命令的輸入。

從內容上看,批處理文件包含了大量的基本DOS命令,是一種可執行文件。該文件運行時能按照其規則將其中的命令逐一執行。使用批處理文件進行的批量的命令處理的過程,稱之爲批處理。

批處理文件(Batch File,簡稱BAT文件)是一種在DOS下最常用的可執行文件。它具有靈活的操縱性,可適應各種複雜的計算機操作。

瞭解與使用基本DOS命令

“命令”(“Command”)一詞,實際上就體現了我們與計算機的交流過程。圖形化界面已經爲我們把複雜難以理解的命令操作封裝成人人都能非常容易上手的操作方式,使得我們只需要點點鼠標或是敲幾下鍵盤就能輕而易舉地完成。

help幫助命令:
比如直接輸入 help 可以得到命令的幫助信息。輸入 help dir 就能得到命令 dir 的具體參數及其用法(等同與 dir /? )。不僅僅是DOS命令,很多帶有命令提示的工具都有help提供幫助和提示,例如MATLAD中的命令行,又如BattleNet中的以斜槓 / 開頭的命令等等。

這些內容來自於一個網上看到的個人網站,這位可敬的仁兄寫了這一篇文檔。
即便是我這樣笨拙的人,也從中吸取了很多知識。
我萬分感謝。

講到這裏,簡單的DOS命令知識已介紹完了,希望這些入門知識對你在後期學習DOS知識中有啓蒙作用。

*返回目錄*

windows的常用快捷鍵

  • Windos版本:Windows10
  • 核心數:4核

在使用windows的時候,快捷鍵能夠提高我們的工作效率。

  • 顯示桌面 將所有窗口最小化到托盤 Win+D
  • 鎖定屏幕 Win+L
  • Win+X 顯示一個非常好用的窗口
  • Win+E 顯示資源管理器
  • Ctrl+Shift+Esc 打開任務管理器
  • 切換任務 Alt+Tab
  • 搜素 Win+Q
  • 打開運行窗口 Win+R

如何建立一個 .bat文件

dos的命令可以輸入到於windows系統中cmd終端中。這些命令可以寫到.bat後綴的bat腳本中,運行腳本命令就會執行。後續我指的文本內容指的就是.bat文件的內容。

*返回目錄*

內部命令:

切換分區,切換到E盤 分區卷標:"

C:\>e:
E:\>

註釋rem 註釋

rem 我是註釋

設置變量:set;

翻譯過來就是“設置”的意思,相當於數學裏的“令”。

set x=1

打印變量: echo %變量名%

假設我們設置了x的值爲99:

C:\> echo %x%
99

阻塞等待:pause

C:\> pause
請按任意鍵繼續. . .

顯示(輸出)信息:echo 輸出內容

C:\> echo here not a world.
here not a world.

關閉命令的回顯@命令

格式:@ 放在命令前面;關閉該行的回顯,回顯就是執行命令之前將命令打印在終端中。

文件內容:

@echo here not a world.

運行效果:

here not a world.

開啓或關閉後續所有回顯 echo onecho off

【echo off】

文件內容

echo off
echo 1234
pause

運行結果

C:\WINDOWS\system32>echo off
1234
請按任意鍵繼續. . .

【echo on】

文件內容

echo on
echo 1234
pause

運行結果

C:\WINDOWS\system32>echo on
C:\WINDOWS\system32>echo 1234
1234  
C:\WINDOWS\system32>pause
請按任意鍵繼續. . .

以當前日期命名一個新建文件 【源代碼】

文件內容

rem 關閉單行回顯,關閉後續回顯
@echo off
rem 從date(日期)中獲取年月日,初始化三個變量
set Y=%date:~0,4%
set m=%date:~5,2%
set d=%date:~8,2%
rem 建立一個文件
echo.> 當日待辦%Y%-%m%-%d%.txt

文件的增刪改查 與 使用

文件分類:

可執行文件:.exe,直接輸入完整文件名即可直接運行
臨時文件:.tmp,這類文件一般都可以直接刪掉
計算器 的絕對路徑:
位置C:\Windows\System32>calc.exe
在dos系統中,也有絕對路徑與相對路徑的概念,這裏不多贅述,可以去查看Linux系統中的相對路徑與絕對路徑概念。*:返回上級目錄 使用cd ..

查看文件dir :查看當前目錄下的所有內容(目錄與子目錄)

dir /? 查看幫助,就可以查看所有參數,格式
dir 文件絕對路徑 絕對路徑查看
dir /p 分頁(分屏)查看 
dir /w 寬列表格式查看(簡要信息查看):只查看文件的名稱 
dir /p /w - 聯合選項:  
dir /a 隱藏文件查看
dir /ad 查看指定格式(比如目錄)
dir /a-d` 查看除了指定格式的之外的所有文件 
dir *.exe` 查詢指定後綴名文件,dir支持通配符,可以使用通配符來實現,找到當前目錄所有可執行文件
dir /b 使用空格式,沒有其他任何標題和摘要

刪除文件del 文件

del newList.txt

複製文件copy:

copy /? (查看幫助)
copy /文件路徑 /目標目錄路徑 (將文件複製到指定位置)

創建文件 echo. > 文件.文件後綴名

例:在當前文件夾中創建一個 text.txt的文本文檔
echo. >text.txt

運行可執行文件callstart

  • 在當前終端下運行
call pycharm64.exe
  • 新建終端運行
start pycharm64.exe

清屏命令cls

cls

查看操作系統版本 ver

ver

查看日期 date/time

date/time

目錄的增刪改查

創建目錄 md 目錄名稱

md newdirectory

刪除目錄 rd 目錄名稱

  • 無參數刪除
rd 文件夾(只能刪除空文件夾)
  • 遞歸刪除
    刪除文件夾內所有內容
rd /s 目錄 
  • 強制刪除
rd /q 
  • 遞歸強制刪除
rd /s/q newdir (這是相對路徑,替換成絕對路徑同理)
  • 查看幫助
rd /? 查看有關rd命令的選項

切換目錄:cd 目錄路徑

  • 切換到指定 絕對路徑的目錄
`cd E:\$RECYCLE.BIN`
  • 切換到上層目錄
cd ..
  • 切換到根目錄
cd \

通過命令更改cmd終端的顏色 color 顏色編號

color命令更改終端的背景色與字體色。
在windows窗口狀態下,可以在頂部空白區域點擊鼠標右鍵,選擇屬性,還可以設置窗口透明度、字體大小等命令行無法達成的功能,永久生效。

  • 將終端顏色恢復默認顏色 color
C:\> color

應用前景色(這裏是字體顏色),6代表黃色。系統不會允許color命令將前景色和背景色設置成一樣的顏色。

文件內容:

@echo off
color 6

運行效果:

color 6

應用背景色,5代表紫色,f代表亮白色,淺色不會讓人感覺心情沉悶。第一個參數是背景色,第二個參數是前景色。

  • 文件內容:
@echo off
color 5f
  • 運行效果:

color 5f

  • 幫助信息:
C:\> color /?
設置默認的控制檯前景和背景顏色。

COLOR [attr]

  attr        指定控制檯輸出的顏色屬性。

顏色屬性由兩個十六進制數字指定 -- 第一個
對應於背景,第二個對應於前景。每個數字
可以爲以下任何值:

    0 = 黑色       8 = 灰色
    1 = 藍色       9 = 淡藍色
    2 = 綠色       A = 淡綠色
    3 = 淺綠色     B = 淡淺綠色
    4 = 紅色       C = 淡紅色
    5 = 紫色       D = 淡紫色
    6 = 黃色       E = 淡黃色
    7 = 白色       F = 亮白色

如果沒有給定任何參數,此命令會將顏色還原到 CMD.EXE 啓動時
的顏色。這個值來自當前控制檯
窗口、/T 命令行開關或 DefaultColor 註冊表
值。

如果嘗試使用相同的
前景和背景顏色來執行
 COLOR 命令,COLOR 命令會將 ERRORLEVEL 設置爲 1。

示例: "COLOR fc" 在亮白色上產生淡紅色

通過註冊表更改命令行顏色的默認值

  1. 鍵盤輸入:win+R
  2. 輸入regedit,點擊運行進入註冊表
  3. 定位到 HKEY_CURRENT_USER\Software\Microsoft\Command Processor
  4. 編輯DWORD(系統位數)值
┌────────────────────────────────────────────────────────┐
│ Edit DWORD(32bit)                                _ □ x │
├────────────────────────────────────────────────────────┤
│ The numerical name(N):                                 │
│ ┌────────────────────────────────────────────────────┐ │
│ │DefaultColor                                        │ │
│ └────────────────────────────────────────────────────┘ │
│ numerical data(V):          ┌─cardinal number────────┐ │
│ ┌────────────────────────┐  │ ● hexadecimal(H)       │ │
│ │3e                      │  │ ● decimalism(D)        │ │ 
│ └────────────────────────┘  │                        │ │
│                             └────────────────────────┘ │
│                             ┌────────┐  ┌────────┐     │
│                             │ OK     │  │ cancel │     │
│                             └────────┘  └────────┘     │
└────────────────────────────────────────────────────────┘

(畫這個圖很累)

在數值數據(numerical data)這個裏面填上我們需要的顏色。點擊確認,當我們再次cmd命令行 時候,可以看到看到顏色已經被應用了。

註冊表這一部分參考地址:

改變cmd窗口背景和字體顏色~永久~

換行追加文本到文檔中 echo 文本內容 >> 文檔

文件內容:

C:\> echo 123 >> new_text.txt

C:\> echo 456 >> new_text.txt

運行效果:new_text.txt內容

123
456

設置時間 time

  • 文件內容
@echo off
time
  • 運行效果
當前時間: 23:01:54.79
輸入新時間:
  • 幫助信息
C:\Users\DELL>time /?
顯示或設置系統時間。

TIME [/T | time]

顯示當前時間設置和輸入新時間的提示,請鍵入
不帶參數的 TIME。要保留現有時間,請按 Enter。

如果命令擴展被啓用,TIME 命令會支持 /T 命令行開關;該命令行開關告訴
命令只輸出當前時間,但不提示輸入新時間。

設置日期 date

  • 文件內容
@echo off
date
  • 運行效果:
當前日期: 2018/12/08 週六
輸入新日期: (年月日)

  • 幫助信息:
C:\Users\DELL>date /?
顯示或設置日期。

DATE [/T | date]

顯示當前日期設置和輸入新日期的提示,請鍵入
不帶參數的 DATE。要保留現有日期,請按 Enter。

如果命令擴展被啓用,DATE 命令會支持 /T 開關;
該開關指示命令只輸出當前日期,但不提示輸入新日期。

接受輸入 set /p 變量=提示語

  • 文件內容:
@echo off
echo --------------------------------------------
set /p OP1=請輸入用戶名:
echo %OP1%
pause
  • 運行效果:
--------------------------------------------
請輸入用戶名:root
root
請按任意鍵繼續. . .

把批處理文件設置爲開機啓動

將bat新建一個快捷方式,拖到 開始菜單>程序>啓動目錄。

dos的異常處理:

ECHO 處於關閉狀態
請檢查輸出的內容以及變量名稱是否正確。

hack(漂亮事) 與 hacker十二守則

  • hacker:管理好自己網絡的同時,探索其他網絡的安全,並將漏洞告知其管理員。
  • 學習 cracker的伎倆,知己知彼,百戰不殆。

hacker 的十二守則(彩蛋)

1.不惡意破壞任何的系統,這樣做只會給你帶來麻煩

2.不修改任何系統文件,如果你是爲了要進入系統而修改它,請在達到目的後將它還原。

3.不將你已破解的賬號分享給你的朋友

4.不要在BBS/論壇上談論關於你hack的任何事情

5.在post文章的時候不要使用真名

6.在入侵期間,不要隨意離開你的電腦

7.不要入侵或者攻擊電信、政府機關的主機

8.不在電話中談論關於你hack的任何事情

9.將你的筆記放在安全的地方

10.讀遍所有有關係統安全或系統漏洞的文件(英文快點學好!)

11.以侵入電腦中的賬號不得刪除或修改

12.不得修改系統文件,如果爲了隱藏自己的侵入而作的修改則不在此限,但仍需要維持原來的系統安全性,不得因得到系統的控制權而破壞原有的安全性。

(這些守則,讓你遠離成爲一個cracker,也爲了你自己的安全)

以上就是hacker的十二守則

*回到目錄再看看*

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章