您好,登錄后才能下訂單哦!
所謂命令行,我們這里指的是基于文本的界面,這個(gè)界面允許你輸入命令,執(zhí)行命令并查看運(yùn)行結(jié)果。你能運(yùn)行一個(gè)終端(圖形桌面上的字符界面或圖形界面之外的文本控制臺(tái)自身)和嵌入其中的一個(gè)命令解釋器(Shell)。
3.2.1 如何進(jìn)入命令行
當(dāng)你的系統(tǒng)正常啟動(dòng)后,進(jìn)入命令行最簡(jiǎn)單的方式是在你的圖形桌面會(huì)話中運(yùn)行終端程序。
圖3.1 啟動(dòng)GNOME終端
例如,在默認(rèn)的Kali Linux系統(tǒng)上,GNOME終端可以從最喜歡應(yīng)用程序中啟動(dòng)。你也可以在活動(dòng)屏幕出現(xiàn)時(shí)(當(dāng)你把鼠標(biāo)移到左上角時(shí))鍵入“terminal”,然后點(diǎn)擊出現(xiàn)的應(yīng)用程序圖標(biāo)(見(jiàn)圖3.1)。
如果圖形界沒(méi)中斷,你仍然可以在虛擬控制臺(tái)上獲得一個(gè)命令行(通過(guò)CTRL+ALT+F1到CTRL+ALT+F6 6個(gè)組合鍵可以最多訪問(wèn)6個(gè)控制臺(tái),如果已經(jīng)在文本模式,Xorg或Wayland的圖形界面之外,可以省掉CTRL鍵)(釋注:Wayland是與X Window屬于同一級(jí)的事物,而不是僅僅作為X Window下X Server的替代。也就是說(shuō),Wayland不僅僅是要完全取代X Window,而且它將顛覆Linux桌面上X Client/X Server的概念,也許以后將沒(méi)有所謂的“X Client”了,而是“Wayland Client”。)在訪問(wèn)命令行及其shell之前,你將獲得一個(gè)基本的登錄屏幕,并在此輸入登錄名和蜜碼:
Kali GNU/Linux Rolling kali-rolling tty3
kali-rolling login: root
Password:
Last login: Fir Mar 25 12:30:05 EDT 2016 from 192.168.122.1 on pts/2
Linux kali-rolling 4.4.0-kali1-amd4 #1 SMP Debian 4.4.6-1kali1 (2016-03-18) x86_64
The programs included with the Kali GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Kali GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
root@kali-rolling:~#
接受輸入并執(zhí)行你命令的程序叫做shell(或者叫命令解釋器)。Kali Linux提供的默認(rèn)shell是Bash(它表示Bourne Again SHell)。結(jié)尾的字符“$”或“#”表明shell在等待你的輸入。同時(shí)最后這個(gè)字符也表明Bash認(rèn)為你是一個(gè)普通用戶($)還是一個(gè)超級(jí)用戶(#)。
3.2.2 命令行基礎(chǔ):瀏覽目錄樹(shù)和管理文件
這一節(jié)只提供相關(guān)命令的一個(gè)概覽,所有的命令都有很多選項(xiàng),這里就不詳述了,可以參看與各自命令相關(guān)的手冊(cè)。在***測(cè)試中,當(dāng)成功利用(Exploit)之后,你通常會(huì)得到對(duì)系統(tǒng)Shell的訪問(wèn)權(quán),而不是圖形用戶界面。因此,熟練掌握命令行對(duì)你成為一名成功的安全專家至關(guān)重要。
當(dāng)一個(gè)會(huì)話打開(kāi)后,pwd命令(表示print working directory)顯示你在文件系統(tǒng)中的當(dāng)前位置。當(dāng)前位置可以通過(guò)cd directory命令(cd 表示change directory)進(jìn)行改變。當(dāng)你使用cd -,你可以回至先前的工作目錄(最近一次cd命令之前的那個(gè)目錄)。父目錄通過(guò)用..表示(雙點(diǎn)),而當(dāng)前目錄用.(單點(diǎn))表示。ls命令允許列出(listing)一個(gè)目錄下的內(nèi)容。如果你不提供參數(shù),ls命令列出的是當(dāng)前目錄下的內(nèi)容。
$ pwd
/home/buxy
$ cd Desktop
$ pwd
/home/buxy/Desktop
$ cd .
$ pwd
/home/buxy/Desktop
$ cd ..
$ pwd
/home/buxy
$ ls
Desktop Downloads Pictures Templates
Documents Music Public Videos
你可以使用mkdir directory命令創(chuàng)建一個(gè)目錄,使用rmdir directory命令刪除一個(gè)已存在的(空的)目錄。mv命令允許你移動(dòng)和重命名文件和目錄;刪除一個(gè)文件用rm file命令,拷貝一個(gè)文件用cp source-file target-file命令。
$ mkdir test
$ ls
Desktop Downloads Pictures Templates Videos
Documents Music Public test
$ mv test new
$ ls
Desktop Downloads new Public Videos
Documents Music Pictures Templates
$ rmdir new
$ ls
Desktop Downloads Pictures Templates Videos
Documents Music Public
Shell通過(guò)在PATH環(huán)境變量中指明的目錄列表中,找到符合給定名稱的第一個(gè)程序并執(zhí)行這個(gè)程序。大多數(shù)情況下,這些命令在/bin,/sbin/,/usr/bin,或/usr/sbin中。例如,ls命令可以在/bin/ls找到,which命令可以給出所給命令所在的目錄。有些命令可以由shell直接處理,這些命令被稱為shell內(nèi)置命令(cd和pwd都是);type命令可以查詢每個(gè)命令的類型。
$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
$ which ls
/bin/ls
$ type rm
rm is /bin/rm
$ type cd
cd is a shell builtin
注意echo命令的使用,它只是在終端上簡(jiǎn)單地顯示一個(gè)字符串。在這種情況下,它用于打印環(huán)境變量的內(nèi)容,因?yàn)閟hell在執(zhí)行命令之彰會(huì)自動(dòng)替換變量的值。
環(huán)境變量:環(huán)境變量允許存儲(chǔ)用于shell或其它程序的全局設(shè)置。它們是上下文相關(guān)并且是可以繼承的。例如,每個(gè)進(jìn)程有他自己的環(huán)境變量集合(上下文相關(guān))。像登錄Shell(login shells)可以聲明變量,并且這些變量可以向下傳遞給其它可執(zhí)行程序(可繼承的)。
這些變量可以定義在系統(tǒng)范圍內(nèi)使用的/etc/profile文件中,或者是定義在每個(gè)用戶獨(dú)有的~/.profile文件中,但是不特定于命令行解釋器的變量定義在/etc/environment中比較好,因?yàn)檫@些變量通過(guò)可插入認(rèn)證模塊(PAM)會(huì)注入到所有的用戶會(huì)話中——甚至沒(méi)有shell被執(zhí)行情況下也可以。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。