用安全》004-SublimeText編輯器的使用)
【行業(yè)認(rèn)證·權(quán)威頭銜】? 華為云天團(tuán)核心成員特約編輯/云享專家/開發(fā)者專家/產(chǎn)品云測專家? 開發(fā)者社區(qū)全滿貫CSDN博客商業(yè)化雙料專家/阿里云簽約作者/騰訊云內(nèi)容共創(chuàng)官/掘金亞馬遜51CTO頂級博主? 技術(shù)生態(tài)共建先鋒橫跨鴻蒙、云計(jì)算、AI等前沿領(lǐng)域的技術(shù)布道者【榮譽(yù)殿堂】 連續(xù)三年蟬聯(lián)華為云十佳博主2022-2024 雙冠加冕CSDN年度博客之星TOP220222023 十余個(gè)技術(shù)社區(qū)年度杰出貢獻(xiàn)獎(jiǎng)得主【知識寶庫】覆蓋全棧技術(shù)矩陣? 編程語言.NET/Java/Python/Go/Node…? 移動生態(tài)HarmonyOS/iOS/Android/小程序? 前沿領(lǐng)域物聯(lián)網(wǎng)/網(wǎng)絡(luò)安全/大數(shù)據(jù)/AI/元宇宙? 游戲開發(fā)Unity3D引擎深度解析文章目錄前言項(xiàng)目描述項(xiàng)目分析一、Sublime Text 編輯器的使用1.1 任務(wù)概述1.2 任務(wù)分析1.3 相關(guān)知識1.4 工作任務(wù)1.5 歸納總結(jié)1.6 提高拓展前言項(xiàng)目描述對編程初學(xué)者來說選擇一個(gè)易于使用的代碼編輯器很重要。選擇一個(gè)符合自己開發(fā)習(xí)慣的代碼編輯器在一定程度上可以提高工作效率。目前市面上有多款代碼編輯器可供選擇。如果不想安裝比較龐大的專業(yè)編程軟件那么輕量級的代碼編輯器就是一個(gè)不錯(cuò)的選擇。在本項(xiàng)目中作者推薦兩款輕量級的代碼編輯器Sublime Text和Visual Studio Code這兩款代碼編輯器均支持在 Windows、Linux、macOS 等操作系統(tǒng)上使用。項(xiàng)目分析本項(xiàng)目主要對 Sublime Text 和 Visual Studio Code 的基本功能進(jìn)行講解以便初學(xué)者可以更快地上手這兩款代碼編輯器提高編程開發(fā)的效率。當(dāng)前實(shí)驗(yàn)環(huán)境中均已安裝好這兩款代碼編輯器因此讀者無須進(jìn)行安裝可以直接使用。一、Sublime Text 編輯器的使用1.1 任務(wù)概述通過本次任務(wù)的學(xué)習(xí)讀者能夠掌握 Sublime Text 代碼編輯器的基本使用方法包括配置中文環(huán)境、配置 Python 運(yùn)行環(huán)境、運(yùn)行 Python 代碼等操作。1.2 任務(wù)分析由于 Sublime Text 本身并沒有提供中文環(huán)境和 Python 運(yùn)行環(huán)境因此需要通過安裝插件的方式來配置中文環(huán)境和 Python 運(yùn)行環(huán)境。1.3 相關(guān)知識Sublime Text 是一個(gè)文本編輯器收費(fèi)軟件可以無限期試用同時(shí)也是一個(gè)先進(jìn)的代碼編輯器。Sublime Text 擁有簡潔的用戶界面和強(qiáng)大的功能還可自定義綁定菜單和工具欄。Sublime Text 主要提供拼寫檢查、書簽、完整的 Python API、Goto 功能等。1.4 工作任務(wù)打開 Windows 攻擊機(jī)在攻擊機(jī)桌面中雙擊圖標(biāo)打開 Sublime Text 3。首次打開時(shí)會有一個(gè)更新提示如圖 4-1 所示。如果需要更新那么單擊“Download”按鈕進(jìn)行下載和安裝即可如果不需要更新那么單擊“Cancel”按鈕即可。這里選擇取消更新。1. 安裝中文插件安裝后的 Sublime Text 默認(rèn)是英文版的可以通過安裝插件將其設(shè)置成中文版。先安裝插件打開 Sublime Text 后按下CtrlShiftP組合鍵打開搜索框如圖 4-2 所示輸入Install Package Control并選擇“Install Package Control”然后按下回車鍵。如果需要關(guān)閉搜索框那么按下Esc鍵即可關(guān)閉搜索框。如果按下回車鍵后頁面無變化稍等片刻30秒左右就會彈出安裝成功的彈窗如圖 4-3 所示接著單擊“確定”按鈕即可關(guān)閉彈窗。再次按下CtrlShiftP組合鍵打開搜索框并搜索插件如圖 4-4 所示輸入Install Package選擇“Package Control: Install Package”然后按下回車鍵。在安裝過程中左下角會出現(xiàn)Loading repositories的提示稍等片刻15秒左右即可安裝成功安裝成功后會彈出一個(gè)輸入框如圖 4-5 所示。在輸入框中輸入chinese選擇ChineseLocalizations插件單擊該插件如圖 4-6 所示即可成功安裝中文插件。安裝成功后如圖 4-7 所示頁面會自動切換為中文環(huán)境。如果需要切換成其他語言那么可以在頂部菜單欄中選擇“幫助”菜單選擇Language選項(xiàng)即可切換成其他語言。2. 配置 Python 環(huán)境1配置 Python 3 環(huán)境打開 Sublime Text 3依次選擇“工具” → “編譯系統(tǒng)” → “新建編譯系統(tǒng)”此時(shí)會打開一個(gè)默認(rèn)的配置界面如圖 4-8 所示。刪除原有的配置并將以下配置粘貼到文件中然后按下CtrlS組合鍵保存該文件文件的路徑保持不變并將文件命名為python3.sublime-build。{encoding:gb2312,cmd:[python3,-u,$file]}2測試 Python 3 環(huán)境單擊 Sublime Text 3 左上角的“文件” → “新建文件”寫入以下 Python 測試代碼并將該文件保存為test1.py。print(hello python3)選擇“工具” → “編譯系統(tǒng)” → “Python3”接著單擊“工具” → “編譯”進(jìn)行編譯也可以通過CtrlB組合鍵進(jìn)行編譯Python 3 的運(yùn)行結(jié)果如圖 4-9 所示。3配置 Python 2 環(huán)境打開 Sublime Text 3依次選擇“工具” → “編譯系統(tǒng)” → “新建編譯系統(tǒng)”此時(shí)會打開一個(gè)默認(rèn)的配置界面然后刪除原有的配置并將以下配置復(fù)制粘貼到文件中按下CtrlS組合鍵保存該文件文件的路徑保持不變將文件命名為python2.sublime-build。{encoding:gb2312,cmd:[python2,-u,$file]}4測試 Python 2 環(huán)境單擊 Sublime Text 3 左上角的“文件” → “新建文件”寫入以下 Python 測試代碼并將該文件保存為test2.py。print(hello python2)選擇“工具” → “編譯系統(tǒng)” → “Python2”按下CtrlB組合鍵進(jìn)行編譯Python 2 的運(yùn)行結(jié)果如圖 4-10 所示。至此完成 Sublime Text 3 的 Python 配置。1.5 歸納總結(jié)本任務(wù)主要介紹了在 Sublime Text 3 中安裝插件的方法如果讀者需要安裝其他插件那么可參照文中的方法進(jìn)行。此外本任務(wù)還介紹了配置 Python 3、Python 2 環(huán)境的方法并給出測試代碼以便測試環(huán)境是否配置成功。1.6 提高拓展Python 是一種解釋型、面向?qū)ο?、動態(tài)數(shù)據(jù)類型的高級程序設(shè)計(jì)語言用來編寫一些漏洞的 PoC 和 EXP 也較為方便Python 中內(nèi)置的os 模塊可以很便捷地執(zhí)行系統(tǒng)命令commands模塊和subprocess模塊也具有執(zhí)行系統(tǒng)命令的功能。接下來以 Python 3 的 os 模塊中的os.system()、os.popen()函數(shù)為例依次進(jìn)行介紹。1. os.system()該函數(shù)可以將字符串轉(zhuǎn)化成在服務(wù)器上運(yùn)行的系統(tǒng)命令。該方法是通過調(diào)用標(biāo)準(zhǔn) C 函數(shù)system()來實(shí)現(xiàn)的如果執(zhí)行的命令有返回結(jié)果那么就輸出結(jié)果。在調(diào)用該方法時(shí)會打開操作系統(tǒng)的相應(yīng)子終端并在其上執(zhí)行命令然后創(chuàng)建一個(gè)子進(jìn)程在系統(tǒng)上執(zhí)行命令而子進(jìn)程的執(zhí)行結(jié)果無法影響主進(jìn)程。該函數(shù)的用法是os.system(command)。其中command是需要執(zhí)行的字符類型的命令UNIX 系統(tǒng)上的返回值是進(jìn)程的退出狀態(tài)Windows 系統(tǒng)上的返回值是系統(tǒng)終端在執(zhí)行命令后返回的值。使用os.system()執(zhí)行系統(tǒng)命令執(zhí)行結(jié)果如圖 4-11 所示。成功輸出執(zhí)行 Windows 系統(tǒng)命令whoami的結(jié)果。2. os.popen()該函數(shù)是通過管道的方式來實(shí)現(xiàn)的這個(gè)函數(shù)的返回值是一個(gè)文件對象可以讀或者寫默認(rèn)可讀。由于返回值是一個(gè)文本對象因此可以調(diào)用該對象的read()或readlines()方法來讀取文本對象的內(nèi)容即輸出命令執(zhí)行的結(jié)果。該函數(shù)的用法os.popen(command[, mode[, bufsize]])。其中方括號內(nèi)為可選參數(shù)command是字符串類型需要執(zhí)行的命令mode可以是r可讀默認(rèn)或w可寫bufsize指明了文件需要的緩沖大小。調(diào)用read()方法讀取輸出的內(nèi)容如圖 4-12 所示成功讀取whoami命令的執(zhí)行結(jié)果。