
Python之os模塊
眾所周知,python是一種強大的腳本語言,那么,問題來了,為什么不用python來編寫Linux腳本呢?問題的答案就是python有os模塊?。∵@個os模塊能夠讓你像在Linux命令行中操作文件一樣,在python中也實現(xiàn)同樣的功能,感覺它就是python天生用來替換BASH的,而且它能夠呈現(xiàn)出一種更簡潔友好的腳本體驗!
第一步;載入os模塊
要想使用os模塊的功能,第一步該怎么做呢?當(dāng)然是首先載入os模塊了,就像在python中使用其它模塊一樣,你只需輸入以下語句就可完成os模塊的導(dǎo)入。
好了,導(dǎo)入os模塊之后,就可以體驗不一樣的Linux文件操作命令了!接下來,將會介紹一些os模塊下與Linux文件操作命令相對應(yīng)的函數(shù)語句。
getcwd()
這條語句以字符串的形式返回當(dāng)前的工作目錄,不必向它傳遞任何參數(shù),相當(dāng)于Linux下的pwd命令。
chdir()
chdir()語句和Linux下的cd命令一樣用來切換工作目錄,調(diào)用這個函數(shù)時,只要將你想改變的文件路徑以字符串的形式作為變量輸入即可。
而且它也像cd命令一樣,支持相對路徑。具體看下面的操作;
listdir()
Lisdir()相當(dāng)于運行l(wèi)s命令,然而不一樣的是,lisdir()并不打印出目錄下的內(nèi)容,只是將其作為一個列表返回。當(dāng)然,你也可以指定特定的目錄,否則的話,它將會列出當(dāng)前的目錄。
mkdir() and makedirs()
這兩個函數(shù)和Linux下創(chuàng)建目錄的命令一樣,它們接受的第一個參數(shù)都是創(chuàng)建的目錄,當(dāng)然是以字符串的形式,此外,還可以指定第二個參數(shù)來給創(chuàng)建的目錄賦予給定的權(quán)限。
與mkdir()不一樣的是,makedirs()支持創(chuàng)建多層目錄,相當(dāng)于運行mkdir()多次
chmod()
chmod()用來改變目錄的權(quán)限,輸入的第一個參數(shù)是要改變的目錄,第二個是要改變的權(quán)限代號
chown()
chown()用來改變文件的所有者,不過它要求用戶和群組的名稱都是有效的,例如
這個命令將"test"目錄的用戶和群組屬性都改為ID號為1000的所有者
remove() and removedirs()
remove()用來刪除單個文件,可以為它傳遞一個絕對路徑。
刪除目錄用removedirs(),它可以刪除指定目錄下的所有內(nèi)容。
system()
最后介紹的這個命令功能最強大,同時也是最危險的一個。它可以運行Linux系統(tǒng)下的所有命令,只要將命令當(dāng)做參數(shù)傳遞給它即可。
不過,這里有幾點需要注意下,第一,使用這個函數(shù)必須在python的終端下,而且,這個函數(shù)會占用較多的系統(tǒng)資源,通常是低效的。最重要的是,這個函數(shù)可以運行任何命令,意味著它也能夠產(chǎn)生任何你想不到的破壞。所以,如果你打算使用這個函數(shù),請謹(jǐn)慎對待并確保它在可控范圍內(nèi)。
現(xiàn)在,使用下面的命令來嘗試下system()吧!
當(dāng)然,你也可以在其中使用管道符命令嘍
運行上面的命令,將會使火狐瀏覽器運行,命令行上將會打出它的進程信息。
總結(jié)
現(xiàn)在,你已經(jīng)使用python向Linux系統(tǒng)邁出了第一步。此外,python還提供了許多其它方便的工具,而這些東西本來是非常復(fù)雜的,由于python使它們變得更加好用。例如,比較流行的自動化工具ANsible和Salt就是用python做的??偠灾?,沒有什么是python不能做的,所以,趕緊GET起來吧!
最后來點小練習(xí):
用Python打印出你當(dāng)前的工作目錄
改變并打印出一個工作目錄
創(chuàng)建一個循環(huán),遍歷目錄的內(nèi)容并單獨打印。
只用一個命令創(chuàng)建一個嵌套目錄
改變一個文件夾的權(quán)限,使目錄擁有者能夠讀取,寫入和運行,而其他人只有讀取和運行的權(quán)限
刪除兩個子目錄
使用Python創(chuàng)建一個文本文件,列出用戶當(dāng)前正在運行的所有進程
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗與 t 檢驗:差異、適用場景與實踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計學(xué)領(lǐng)域,假設(shè)檢驗是驗證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實踐指南 在 Python 進行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點數(shù)據(jù)的科學(xué)計數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點數(shù)據(jù)時的科學(xué)計數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計” 與 “用戶體驗 ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10