用Python編寫shell腳本時(shí)經(jīng)常使用的函數(shù)有哪些

用Python編寫shell腳本時(shí)經(jīng)常使用的函數(shù)有哪些,很多新手對(duì)此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)自成立以來,一直致力于為企業(yè)提供從網(wǎng)站策劃、網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、網(wǎng)站制作、電子商務(wù)、網(wǎng)站推廣、網(wǎng)站優(yōu)化到為企業(yè)提供個(gè)性化軟件開發(fā)等基于互聯(lián)網(wǎng)的全面整合營銷服務(wù)。公司擁有豐富的網(wǎng)站建設(shè)和互聯(lián)網(wǎng)應(yīng)用系統(tǒng)開發(fā)管理經(jīng)驗(yàn)、成熟的應(yīng)用系統(tǒng)解決方案、優(yōu)秀的網(wǎng)站開發(fā)工程師團(tuán)隊(duì)及專業(yè)的網(wǎng)站設(shè)計(jì)師團(tuán)隊(duì)。

在計(jì)算機(jī)語言的實(shí)際應(yīng)用中用Python編寫shell腳本這一實(shí)際應(yīng)用的過程中是需要相關(guān)的函數(shù)的,在以下的文章里就會(huì)提及這一函數(shù)在Python編寫shell腳本的具體應(yīng)用,以下是文章的具體介紹。

雖然我受*nix的影響甚深,但是對(duì)于*nix里隨處可見的sh腳本卻是討厭之極。為什么討厭呢?首先 是因?yàn)閟h腳本那莫名其妙的語法,感覺就像隨寫隨扔的程序,完全沒有任何美感可言。其次是sh腳本的處理能力還是比較弱的,在文本處理、XML處理還有網(wǎng) 絡(luò)編程方面,基本上都要借助于perl,awk等一堆程序。

我對(duì)這些程序也是不大喜歡的,況且學(xué)習(xí)第三方軟件總要時(shí)間,還不如都用python好了。那,python可以做shell腳本嗎? 首先介紹一個(gè)函數(shù):

os.system(command)

這個(gè)函數(shù)可以調(diào)用shell運(yùn)行命令行command并且返回它的返回值。試一下在python的解釋器里輸入os.system(”ls -l”),就可以看到”ls”列出了當(dāng)前目錄下的文件??梢哉f,通過這個(gè)函數(shù),python就擁有了shell的所有能力。不過,通常這條命令不 需要用到。因?yàn)閟hell常用的那些命令在python中通常有對(duì)應(yīng)而且同樣簡(jiǎn)潔的寫法。

shell中最常用的是ls命令,python對(duì)應(yīng)的寫法是:os.listdir(dirname),這個(gè)函數(shù)返回字符串列表,里面是所有的文件名,不過不包含”.”和”..”。如果要遍歷整個(gè)目錄的話就會(huì)比較復(fù)雜一點(diǎn)。我們等下再說吧。先在解釋器里試一下:

  1. >>> os.listdir(”/”)  

  2. [’tmp’, ‘misc’, ‘opt’, ‘root’, ‘.autorelabel’, 
    ’sbin’, ’srv’, ‘.autofsck’, ‘mnt’, ‘usr’, ‘var’, 
    ‘etc’, ’selinux’, ‘lib’, ‘net’, ‘lost+found’, ’sys’,
     ‘media’, ‘dev’, ‘proc’, ‘boot’, ‘home’, ‘bin’] 

就像這樣,接下去所有命令都可以在python的解釋器里直接運(yùn)行觀看結(jié)果。

對(duì)應(yīng)于cp命令的是:shutil.copy(src,dest),這個(gè)函數(shù)有兩個(gè)參數(shù),參數(shù)src是指源文件的名字,參數(shù)dest則是目標(biāo)文件或 者目標(biāo)目錄的名字。 如果dest是一個(gè)目錄名,就會(huì)在那個(gè)目錄下創(chuàng)建一個(gè)相同名字的文件。與shutil.copy函數(shù)相類似的是 shutil.copy2(src,dest),不過copy2還會(huì)復(fù)制***存取時(shí)間和***更新時(shí)間。

  • Python標(biāo)準(zhǔn)庫的強(qiáng)大功能的相關(guān)介紹

  • 用Python生成不依賴dll的exe的操作步驟簡(jiǎn)

  • 搭建Python Web環(huán)境所需要的相關(guān)步驟介紹

  • Python入門用Bug修改和.jam文件需要注意

  • 用Python腳本轉(zhuǎn)換成windows的可執(zhí)行程序

不過,shell的cp命令還可以復(fù)制目錄,python的shutil.copy卻不行,***個(gè)參數(shù)只能是一個(gè)文件。這怎么辦?其 實(shí),python還有個(gè)shutil.copytree(src,dst[,symlinks]) 。參數(shù)多了一個(gè)symlinks,用Python編寫shell腳本是一個(gè)布爾值,如果是True的話就創(chuàng)建符號(hào)鏈接。

移動(dòng)或者重命名文件和目錄呢?估計(jì)被聰明的朋友猜到了,shutil.move(src,dst),呵呵。。與mv命令類似,如果src和dst在 同一個(gè)文件系統(tǒng)上,shutil.move只是簡(jiǎn)單改一下名字,如果src和dst在不同的文件系統(tǒng)上,shutil.move會(huì)先把src復(fù)制到 dst,然后刪除src文件??吹浆F(xiàn)在,大多數(shù)朋友應(yīng)該已經(jīng)對(duì)python的能力有點(diǎn)眉目了。 以上就是對(duì)如何用Python編寫shell腳本相關(guān)的內(nèi)容的介紹,望你會(huì)有所收獲。

看完上述內(nèi)容是否對(duì)您有幫助呢?如果還想對(duì)相關(guān)知識(shí)有進(jìn)一步的了解或閱讀更多相關(guān)文章,請(qǐng)關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對(duì)創(chuàng)新互聯(lián)的支持。

分享題目:用Python編寫shell腳本時(shí)經(jīng)常使用的函數(shù)有哪些
標(biāo)題路徑:http://bm7419.com/article6/gipdog.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站排名、移動(dòng)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)、微信公眾號(hào)、電子商務(wù)、ChatGPT

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)