實(shí)際運(yùn)用Unix操作系統(tǒng)set命令
我們?cè)趯W(xué)習(xí)過了Unix操作系統(tǒng)的set命令的一些知識(shí)后,今天更進(jìn)一步的介紹set命令的知識(shí)。以前我們所舉的例子其實(shí)只是set命令的一個(gè)教學(xué)例子。在實(shí)際工作中,這主要是用來讓大家理解Unix操作系統(tǒng)set命令來截取輸出結(jié)果的基本原理。筆者現(xiàn)在要介紹的就是系統(tǒng)工程師在實(shí)際工作中經(jīng)常要用到的內(nèi)容,大家要睜開眼看仔細(xì)了。
1、從其他文件中或者不規(guī)則分隔符的結(jié)果中截取字段。如上面所示的輸出結(jié)果中,各個(gè)字段時(shí)通過空格符號(hào)來分隔的。也即是說,set命令使用的參數(shù)分隔符默認(rèn)情況下采用的是空格符號(hào)分隔符。
如果顯示的結(jié)果不是以空格符號(hào)分隔的,還是以分號(hào)或者橫桿來區(qū)分的(系統(tǒng)工程師平時(shí)遇到最多的就是利用分號(hào)或者/符號(hào)來分隔的內(nèi)容),那么就不能利用這個(gè)命令了嗎?其實(shí)Unix操作系統(tǒng)工程師可以根據(jù)實(shí)際情況來設(shè)置這個(gè)分隔符。也就是說,系統(tǒng)工程師可以利用這個(gè)set命令來操作位置參數(shù),從而從任何輸出結(jié)果中(分隔符不同)截取所需要的內(nèi)容。
2、有利于備份的工作。其實(shí)在備份作業(yè)中,這個(gè)特性就非常有用。如筆者在Unix操作系統(tǒng)上簡易部署了一個(gè)文件服務(wù)器。在這個(gè)服務(wù)器上,存儲(chǔ)有企業(yè)所有員工的日常工作文件。為此其日常的安全就顯得非常的重要。
此時(shí)Unix操作系統(tǒng)工程師可以采用日被分的方式,把備份文件保存為一個(gè)月。也就是說,在系統(tǒng)中創(chuàng)建1-31一共三十一個(gè)文件夾。然后把文件服務(wù)器中的備份文件按照日期一次保存到這三十一個(gè)文件夾中。也就是說1日的備份文件保存在文件夾名字為1的文件夾中,2日的備分文件備份到名字為2的文件夾中,依次類推。這個(gè)備份功能程序不難,系統(tǒng)工程師可以編寫一個(gè)腳本程序來完成。
困難的是,Unix操作系統(tǒng)如何根據(jù)當(dāng)前的日期把備份文件保存到特定的文件夾中。此時(shí)就需要用刀這個(gè)set命令。Unix操作系統(tǒng)工程師可以利用set命令來抽取系統(tǒng)日期中的第三個(gè)位置參數(shù)。然后根據(jù)這個(gè)參數(shù)創(chuàng)建文件夾(創(chuàng)建文件夾時(shí),如果文件夾已經(jīng)存在,則系統(tǒng)會(huì)自動(dòng)覆蓋這個(gè)文件夾)。就是這么簡單,就可以完成按日來保存?zhèn)浞菸募?。可見,利用set命令截取某個(gè)輸出結(jié)果中的內(nèi)容這是一個(gè)基礎(chǔ)性的功能。
他跟其他命令或者程序結(jié)合則可以發(fā)揮意想不到的效果。為此筆者建議各位Unix操作系統(tǒng)工程師,要牢記如何通過set命令來從輸出結(jié)果中截取必要的參數(shù)。或許在什么時(shí)候就用的著了。
另外需要注意的就是,Unix操作系統(tǒng)set命令可以通過各種分隔符來截取相關(guān)的字段,而不僅僅只是支持一個(gè)空格分隔符,如可以從一個(gè)分號(hào)分隔的參數(shù)文件中獲取相關(guān)的參數(shù)等等。
【編輯推薦】