第4章 Vim編輯器與Shell腳本_第1頁(yè)
第4章 Vim編輯器與Shell腳本_第2頁(yè)
第4章 Vim編輯器與Shell腳本_第3頁(yè)
第4章 Vim編輯器與Shell腳本_第4頁(yè)
第4章 Vim編輯器與Shell腳本_第5頁(yè)
已閱讀5頁(yè),還剩25頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

PPT模板:/moban/PPT素材:/sucai/PPT背景:/beijing/PPT圖表:/tubiao/PPT下載:/xiazai/PPT教程:/powerpoint/資料下載:/ziliao/范文下載:/fanwen/試卷下載:/shiti/教案下載:/jiaoan/PPT論壇:PPT課件:/kejian/語(yǔ)文課件:/kejian/yuwen/數(shù)學(xué)課件:/kejian/shuxue/英語(yǔ)課件:/kejian/yingyu/美術(shù)課件:/kejian/meishu/科學(xué)課件:/kejian/kexue/物理課件:/kejian/wuli/化學(xué)課件:/kejian/huaxue/生物課件:/kejian/shengwu/地理課件:/kejian/dili/歷史課件:/kejian/lishi/Contents目錄4.1

Vim編輯器4.2編寫(xiě)Shell腳本4.3流程控制語(yǔ)句4.4計(jì)劃任務(wù)服務(wù)程序1Vim編輯器Vim編輯器的三種模式Vim編輯器之所以能得到廣大用戶的認(rèn)可,是因?yàn)閂im編輯器中設(shè)置了三種模式:命令模式、末行模式和編輯模式,每種模式又分別支持多種不同的命令快捷鍵,大大提高了工作效率,而且用戶在習(xí)慣之后也會(huì)覺(jué)得很方便。要想高效率地操作文本,就必須先搞清這三種模式的操作區(qū)別及各個(gè)模式之間的切換方法,如圖4-1所示。(1)命令模式:控制光標(biāo)移動(dòng),可對(duì)文本進(jìn)行復(fù)制、粘貼、刪除和查找等工作。(2)末行模式:可以保存或退出文檔,以及設(shè)置編輯環(huán)境。(3)編輯模式:可進(jìn)行正常的文本錄入。VIM編輯器的切換在每次運(yùn)行Vim編輯器時(shí),默認(rèn)進(jìn)入命令模式,此時(shí)需要先切換到編輯模式后再進(jìn)行文檔編輯工作,而每次在編輯完文后后需要先返回命令模式,再進(jìn)入末行模式,執(zhí)行文檔的保存或退出操作。在Vim編輯器中,無(wú)法直接從編輯模式切換到末行模式。末行模式末行模式主要用于保存或退出文件,以及設(shè)置Vim編輯器的工作環(huán)境,還可以讓用戶執(zhí)行外部的Linux命令或跳轉(zhuǎn)到所編寫(xiě)文檔的特定行數(shù)。要想切換到末行模式,在命令模式中輸入一個(gè)冒號(hào)就可以了。命

令作

用:w保存:q退出:q!強(qiáng)制退出(放棄對(duì)文檔的修改):wq!強(qiáng)制保存退出:setnu顯示行號(hào):setnonu不顯示行號(hào):命令執(zhí)行該命令:整數(shù)跳轉(zhuǎn)到該行:s/one/two將當(dāng)前光標(biāo)所在行的第一個(gè)one替換成two:s/one/two/g將當(dāng)前光標(biāo)所在行的所有one替換成two:%s/one/two/g將全文中的所有one替換成two?字符串在文本中從下至上搜索該字符串/字符串在文本中從上至下搜索該字符串配置主機(jī)名稱為了便于在局域網(wǎng)中查找某臺(tái)特定的主機(jī),或者對(duì)主機(jī)進(jìn)行區(qū)分,除了要有IP地址,還要為主機(jī)配置一個(gè)主機(jī)名稱,主機(jī)之間可以通過(guò)這個(gè)類(lèi)似于域名的名稱相互訪問(wèn)。在Linux操作系統(tǒng)中,主機(jī)名稱大多保存在/etc/hostname文件中,接下來(lái)將/etc/hostname文件的內(nèi)容修改為“”,步驟如下。第1步:使用【vim/etc/hostname】命令修改主機(jī)名稱文件。第2步:把原始主機(jī)名稱刪除后追加“”。注意,使用Vim編輯器修改主機(jī)名稱文件后,要在末行模式下執(zhí)行【:wq!】命令后才能保存并退出文檔。第3步:保存并退出文檔,然后使用【hostname】命令檢查是否修改成功。注意:hostname命令用于查看當(dāng)前的主機(jī)名稱,但有時(shí)改變主機(jī)名稱后,新的主機(jī)名稱不會(huì)立即同步到系統(tǒng)中,所以如果發(fā)現(xiàn)修改完主機(jī)名稱后仍顯示原來(lái)的主機(jī)名稱,可以重啟虛擬機(jī)后再次查看,或者先使用【hostname】命令后再使用【exit】命令退出系統(tǒng),重新登錄可以使主機(jī)名稱的修改及時(shí)生效。配置IP地址配置IP地址是否正確是兩臺(tái)服務(wù)器能否相互通信的前提。在Linux操作系統(tǒng)中,一切都是文件,因此配置網(wǎng)絡(luò)服務(wù)的工作其實(shí)就是在編輯網(wǎng)卡配置文件,此任務(wù)不僅可以幫助讀者練習(xí)使用Vim編輯器,而且能為讀者之后學(xué)習(xí)Linux操作系統(tǒng)中的各種服務(wù)配置打下堅(jiān)實(shí)的基礎(chǔ)。如果讀者具備一定的運(yùn)維經(jīng)驗(yàn)或熟悉早期的Linux操作系統(tǒng),則在學(xué)習(xí)本書(shū)時(shí)會(huì)遇到一些很難接受的差異變化。在CentOS5、CentOS6中,網(wǎng)卡配置文件的前綴為eth,第1塊網(wǎng)卡為eth0,第2塊網(wǎng)卡為eth1,以此類(lèi)推。而在CentOS7中,網(wǎng)卡配置文件則以ifcfg為前綴,加上網(wǎng)卡名稱共同組成網(wǎng)卡配置文件的名稱,如ifcfg-ens33。在CentOS7中,第一塊網(wǎng)卡配置文件名稱為ifcfg-ens33,第二塊網(wǎng)卡配置文件名稱為ifcfg-ens34,好在除文件名稱有所變化外,其他并沒(méi)有很大的區(qū)別。配置IP地址現(xiàn)在有一個(gè)名稱為ifcfg-ens33的網(wǎng)卡設(shè)備,將其配置為開(kāi)機(jī)啟動(dòng),并且IP地址、子網(wǎng)、網(wǎng)關(guān)等信息由人工指定,具體步驟如下。第1步:首先使用【cd/etc/sysconfig/network-scripts/】命令切換到存放網(wǎng)卡的配置文件目錄中。第2步:使用【vimifcfg-ens33】命令修改網(wǎng)卡文件,逐項(xiàng)寫(xiě)入下面的配置參數(shù)并保存退出。每臺(tái)設(shè)備的硬件及架構(gòu)是不一樣的,因此請(qǐng)讀者使用ifconfig命令自行確認(rèn)各自網(wǎng)卡的默認(rèn)名稱。ifcfg-ens33文件內(nèi)容如下。TYPE=Ethernet #設(shè)備類(lèi)型BOOTPROTO=static #地址分配模式NAME=ens33 #網(wǎng)卡名稱ONBOOT=yes #是否啟動(dòng)IPADDR=88 #IP地址NETMASK= #子網(wǎng)掩碼GATEWAY= #默認(rèn)網(wǎng)關(guān)地址DNS1= #DNS1地址第3步:使用【systemctlrestartnetwork】命令重啟網(wǎng)絡(luò)服務(wù),通過(guò)【ping88】命令測(cè)試網(wǎng)絡(luò)能否連通。由于在Linux操作系統(tǒng)中,ping命令不會(huì)自動(dòng)終止,所以需要手動(dòng)按下“Ctrl+C”組合鍵來(lái)強(qiáng)行結(jié)束進(jìn)程。yum軟件倉(cāng)庫(kù)盡管RPM軟件包管理器能夠幫助用戶查詢軟件的依賴關(guān)系,但問(wèn)題還是要運(yùn)維人員自己解決的,有些大型軟件可能與數(shù)十個(gè)程序都有依賴關(guān)系,在這種情況下安裝軟件會(huì)非常復(fù)雜。yum軟件倉(cāng)庫(kù)便是為了進(jìn)一步降低軟件的安裝難度和復(fù)雜度而設(shè)計(jì)的技術(shù)。yum(YellowdogUpdaterModified)軟件倉(cāng)庫(kù)是一個(gè)在Fedora、RedHat及CentOS中的Shell前端軟件包管理器?;赗PM軟件包管理,能夠從指定的服務(wù)器自動(dòng)下載RPM軟件包并安裝,可以自動(dòng)處理依賴關(guān)系,并一次性安裝所有有依賴關(guān)系的軟件包,無(wú)須煩瑣地一次次下載、安裝。yum軟件倉(cāng)庫(kù)的關(guān)鍵之處是要有可靠的repository,即軟件倉(cāng)庫(kù),它可以是http或ftp站點(diǎn),也可以是本地軟件池,但必須包含RPM的header,header包括了RPM軟件包的各種信息,包括描述、功能、提供的文件、依賴關(guān)系等。只有收集了這些header并加以分析,才能自動(dòng)化地完成余下的任務(wù)。常見(jiàn)的yum命令命

令作

用yumrepolistall列出所有倉(cāng)庫(kù)yumlistall列出倉(cāng)庫(kù)中所有軟件包yuminfo軟件包名稱查看軟件包信息yuminstall軟件包名稱安裝軟件包yumreinstall軟件包名稱重新安裝軟件包yumupdate軟件包名稱升級(jí)軟件包yumremove軟件包名稱移除軟件包yumcleanall清除所有倉(cāng)庫(kù)緩存yumcheck-update檢查可更新的軟件包yumgrouplist查看系統(tǒng)中已經(jīng)安裝的軟件包組yumgroupinstall軟件包組安裝指定的軟件包組yumgroupremove軟件包組移除指定的軟件包組配置yum軟件倉(cāng)庫(kù)第1步:使用【cd/etc/yum.repos.d/】命令進(jìn)入yum軟件倉(cāng)庫(kù)的配置文件目錄。第2步:備份默認(rèn)yum配置文件,在修改配置文件之前,先備份要修改的文件,養(yǎng)成好的習(xí)慣?!緇s】會(huì)看到CentOS中默認(rèn)的7個(gè)以repo為后綴的配置文件?!緈kdirbak】建立備份文件夾。【mvCent*/etc/yum.repos.d/bak/】將原有的配置文件移動(dòng)到備份文件夾中。第3步:使用【vimCentOS7.repo】命令創(chuàng)建一個(gè)名為CentOS7.repo的新配置文件(新建的文件必須以.repo為后綴,名稱可以隨意?。?,逐項(xiàng)寫(xiě)入以下配置參數(shù)并保存退出(不要寫(xiě)入后面的中文注釋?zhuān)?/p>

[rhel-media] #yum軟件倉(cāng)庫(kù)唯一標(biāo)識(shí)符,避免與其他倉(cāng)庫(kù)沖突。name=linux-yhy #yum軟件倉(cāng)庫(kù)的名稱描述,易于識(shí)別倉(cāng)庫(kù)用處。baseurl=file:///mnt/ #提供的方式包括FTP(ftp://..)、HTTP(http://..)、本地(file:///..)。enabled=1 #設(shè)置此源是否可用,1為可用,0為禁用。gpgcheck=0 #設(shè)置此源是否校驗(yàn)文件,1為校驗(yàn),0為不校驗(yàn)。#若上面參數(shù)開(kāi)啟校驗(yàn),那么請(qǐng)指定公鑰文件地址。gpgkey=file:///media/cdrom/RPM-GPG-KEY-redhat-release第4步:按配置參數(shù)的路徑掛載光盤(pán),使用【mount

/dev/cdrom

/mnt】命令。掛載成功后可以通過(guò)【ls/mnt/】命令在/mnt目錄下看到光盤(pán)中的文件。第5步:使用【yumlist】命令查看當(dāng)前的yum源。第6步:使用【yuminstallhttpd-y】命令檢查yum軟件倉(cāng)庫(kù)是否已經(jīng)可用。使用yum軟件倉(cāng)庫(kù)來(lái)安裝Web服務(wù),出現(xiàn)Complete!,則代表配置正確。使用【yumremove-yhttpd】命令可以卸載剛剛安裝的httpd軟件包。2編寫(xiě)Shell腳本Shell終端解釋器可以將Shell終端解釋器當(dāng)作人與計(jì)算機(jī)硬件之間的“翻譯官”,它作為用戶與Linux操作系統(tǒng)內(nèi)部的通信媒介,除了能夠支持各種變量與參數(shù),還能提供諸如循環(huán)、分支等高級(jí)編程語(yǔ)言才有的控制結(jié)構(gòu)特性。要想正確使用Shell腳本中的這些結(jié)構(gòu)特性,準(zhǔn)確下達(dá)命令尤為重要。Shell腳本命令的工作方式有兩種:交互式和批處理。? 交互式(Interactive):用戶每輸入一條命令就立即執(zhí)行。? 批處理(Batch):由用戶事先編寫(xiě)好一個(gè)完整的Shell腳本,Shell會(huì)一次性執(zhí)行腳本中諸多的命令。在Shell腳本中不僅會(huì)用到前面學(xué)習(xí)過(guò)的很多Linux命令、正則表達(dá)式、管道命令符、重定向等語(yǔ)法規(guī)則,還需要把內(nèi)部功能模塊化后通過(guò)邏輯語(yǔ)句進(jìn)行處理,最終形成日常所見(jiàn)的Shell腳本。查看Shell變量可以發(fā)現(xiàn)當(dāng)前系統(tǒng)已經(jīng)默認(rèn)使用Bash作為命令行終端解釋器了?!緀cho$SHELL】編寫(xiě)簡(jiǎn)單的Shell腳本有關(guān)Shell腳本的描述比較復(fù)雜。但是,上面介紹指的是一個(gè)高級(jí)Shell腳本的編寫(xiě)原則,其實(shí)使用Vim編輯器把Linux命令按照順序依次寫(xiě)入一個(gè)文件,就是一個(gè)簡(jiǎn)單的Shell腳本。例如,如果想查看當(dāng)前所在的工作路徑并列出當(dāng)前目錄下所有的文件及屬性信息,實(shí)現(xiàn)這個(gè)功能的腳本如下。【vimexample.sh】新建example.sh腳本文件,輸入如下內(nèi)容:#!/bin/bash#BYYHYpwdls-alShell腳本文件的名稱可以任意設(shè)置,但為了避免Shell腳本文件被誤認(rèn)為普通文件,建議在文件后加上.sh后綴,以表示它是一個(gè)腳本文件。在上述的example.sh腳本文件中實(shí)際上出現(xiàn)了三種不同的元素:第一行的腳本聲明(#!)用來(lái)告訴系統(tǒng)使用哪種Shell解釋器來(lái)執(zhí)行該腳本;第二行的注釋信息(#)是對(duì)腳本功能和某些命令的介紹信息,使得用戶或他人在日后看到這個(gè)腳本的內(nèi)容時(shí),可以快速知道該腳本的作用及一些警告信息;第三、四行的可執(zhí)行語(yǔ)句就是平時(shí)執(zhí)行的Linux命令了。執(zhí)行上述命令的結(jié)果如下?!綽ashexample.sh】編寫(xiě)簡(jiǎn)單的Shell腳本除了前面用Bash解釋器直接運(yùn)行Shell腳本文件,還可以通過(guò)輸入完整路徑的方式來(lái)運(yùn)行腳本文件。但默認(rèn)會(huì)因?yàn)闄?quán)限不足而提示報(bào)錯(cuò)信息,此時(shí)只需要為腳本文件增加執(zhí)行權(quán)限即可。初次學(xué)習(xí)Linux操作系統(tǒng)的讀者不用心急,在學(xué)習(xí)完下一章的用戶身份和權(quán)限后再來(lái)做這個(gè)實(shí)驗(yàn)也不遲?!?/example.sh】彈出“bash:./Example.sh:Permissiondenied”的未執(zhí)行提示?!綾hmodu+xexample.sh】修改文件權(quán)限,為腳本文件增加執(zhí)行權(quán)限?!?/example.sh】正常執(zhí)行。為了讓Shell腳本程序更好地滿足用戶的一些實(shí)時(shí)需求,以便靈活地完成工作,必須要讓腳本程序能夠像之前執(zhí)行命令時(shí)那樣,接收用戶輸入的參數(shù)。其實(shí),Linux操作系統(tǒng)中的Shell腳本語(yǔ)言已經(jīng)內(nèi)設(shè)了用于接收參數(shù)的變量,變量之間可以使用空格間隔。例如,$0對(duì)應(yīng)的是當(dāng)前Shell腳本程序的名稱,$#對(duì)應(yīng)的是共有幾個(gè)參數(shù),$*對(duì)應(yīng)的是所有位置的參數(shù)值,$?對(duì)應(yīng)的是顯示上一次命令的執(zhí)行返回值,而$1、$2、$3……則分別對(duì)應(yīng)第N個(gè)位置的參數(shù)值。下面將通過(guò)引用上述變量參數(shù)來(lái)查看真實(shí)效果?!緑imexample.sh】打開(kāi)example.sh文件,輸入如下內(nèi)容:#!/bin/bashecho"當(dāng)前腳本名稱為$0"echo"總共有$#個(gè)參數(shù),分別是$*。"echo"第1個(gè)參數(shù)為$1,第5個(gè)為$5。"【shexample.shonetwothreefourfivesix】給出參數(shù),運(yùn)行腳本,查看結(jié)果,如圖所示。接收用戶輸入的參數(shù)判斷用戶的參數(shù)Shell腳本中的條件測(cè)試語(yǔ)法可以判斷表達(dá)式是否成立,若條件成立則返回?cái)?shù)字0,否則返回其他隨機(jī)數(shù)值。條件測(cè)試語(yǔ)法的執(zhí)行格式為【[條件表達(dá)式]】。需要注意的是條件表達(dá)式兩邊均有一個(gè)空格。按照測(cè)試對(duì)象來(lái)劃分,條件測(cè)試語(yǔ)句可以分為4種:?文件測(cè)試語(yǔ)句。?邏輯測(cè)試語(yǔ)句。?整數(shù)值比較語(yǔ)句。?字符串比較語(yǔ)句。3流程控制語(yǔ)句if條件測(cè)試語(yǔ)句if條件測(cè)試語(yǔ)句可以讓腳本根據(jù)實(shí)際情況自動(dòng)執(zhí)行相應(yīng)的命令。從技術(shù)角度來(lái)講,if語(yǔ)句分為單分支結(jié)構(gòu)、雙分支結(jié)構(gòu)、多分支結(jié)構(gòu),其復(fù)雜度隨著靈活度的提高而提高。if條件測(cè)試語(yǔ)句的單分支結(jié)構(gòu)由if、then、fi關(guān)鍵詞組成,而且只在條件成立后才執(zhí)行默認(rèn)的命令,相當(dāng)于口語(yǔ)的“如果……那么……”。單分支結(jié)構(gòu)的if條件測(cè)試語(yǔ)句屬于最簡(jiǎn)單的條件判斷結(jié)構(gòu),語(yǔ)法格式如下:if條件測(cè)試

then命令fi下面使用單分支的if條件測(cè)試語(yǔ)句來(lái)判斷/home/yhy目錄是否存在,若存在就結(jié)束條件判斷和整個(gè)Shell腳本,反之則去創(chuàng)建此目錄?!緑immkyhy.sh】新建mkyhy.sh文件,輸入以下內(nèi)容:#!/bin/bashDIR="/home/yhy"if[!-e$DIR]thenmkdir-p$DIRfi由于在后面的章節(jié)中才會(huì)講解用戶身份與權(quán)限,所以這里繼續(xù)用【bash腳本名稱】的方式來(lái)執(zhí)行腳本。在正常情況下,順利執(zhí)行完腳本文件后沒(méi)有任何輸出信息,但是可以使用ls命令驗(yàn)證/home/yhy目錄是否已經(jīng)創(chuàng)建成功:【bashmkyhy.sh】【ls-d/home/yhy】返回“/home/yhy”值if條件測(cè)試語(yǔ)句if條件測(cè)試語(yǔ)句的雙分支結(jié)構(gòu)由if、then、else、fi關(guān)鍵詞組成,它進(jìn)行一次條件匹配判斷,如果與條件匹配,則去執(zhí)行相應(yīng)的默認(rèn)命令;反之則去執(zhí)行不匹配時(shí)的默認(rèn)命令,相當(dāng)于口語(yǔ)的“如果……那么……或者……那么……”。if條件語(yǔ)句的雙分支結(jié)構(gòu)也是一種很簡(jiǎn)單的判斷結(jié)構(gòu),語(yǔ)法格式如下:if條件測(cè)試

then命令序列1else命令序列2Fi下面使用雙分支結(jié)構(gòu)的if條件測(cè)試語(yǔ)句來(lái)驗(yàn)證某臺(tái)主機(jī)是否在線,然后根據(jù)返回值的結(jié)果,顯示主機(jī)在線或不在線的信息。這里的腳本主要使用ping命令來(lái)測(cè)試與對(duì)方主機(jī)的網(wǎng)絡(luò)聯(lián)通性,Linux操作系統(tǒng)中的ping命令不像Windows操作系統(tǒng)中的ping命令一樣,嘗試4次就結(jié)束了,因此為了避免用戶等待時(shí)間過(guò)長(zhǎng),需要通過(guò)-c參數(shù)來(lái)規(guī)定嘗試的次數(shù),通過(guò)-i參數(shù)定義每個(gè)數(shù)據(jù)包的發(fā)送間隔,并使用-W參數(shù)定義等待超時(shí)時(shí)間。【vimchkhost.sh】新建“chkhost.sh”文件,輸入以下內(nèi)容:#!/bin/bashping-c3-i0.2-W3$1&>/dev/nullif[$?-eq0]thenecho"Host$1isOn-line."elseecho"Host$1isOff-line."fifor條件循環(huán)語(yǔ)句for條件循環(huán)語(yǔ)句允許腳本一次性讀取多個(gè)信息,然后逐一對(duì)信息進(jìn)行處理,當(dāng)要處理的數(shù)據(jù)有范圍限制時(shí),非常適合使用for條件循環(huán)語(yǔ)句。for條件循環(huán)語(yǔ)句的語(yǔ)法格式如下。for變量名in取值列表do

命令序列done下面使用for條件循環(huán)語(yǔ)句從列表文件中讀取多個(gè)用戶名稱,然后為其逐一創(chuàng)建賬戶并設(shè)置密碼。首先創(chuàng)建用戶名稱的列表文件users.txt,每個(gè)用戶名稱單獨(dú)一行。讀者可以自行決定具體的用戶名稱和個(gè)數(shù):

【vim

users.txt】zhangsanlisiwangwuyhyyangboshiwhile條件循環(huán)語(yǔ)句while條件循環(huán)語(yǔ)句是一種讓腳本根據(jù)某些條件來(lái)重復(fù)執(zhí)行命令的語(yǔ)句,它的循環(huán)結(jié)構(gòu)往往在執(zhí)行前并不確定最終執(zhí)行的次數(shù),完全不同于for條件循環(huán)語(yǔ)句中有目標(biāo)、有范圍的使用場(chǎng)景。while條件循環(huán)語(yǔ)句通過(guò)判斷條件測(cè)試的真假來(lái)決定是否繼續(xù)執(zhí)行命令,若條件為真就繼續(xù)執(zhí)行,若條件為假就結(jié)束循環(huán)。while條件循環(huán)語(yǔ)句的語(yǔ)法格式如下:while條件測(cè)試do

命令序列donecase條件測(cè)試語(yǔ)句case條件測(cè)試語(yǔ)句和C語(yǔ)言的中switch語(yǔ)句的功能很相似。case條件測(cè)試語(yǔ)句在多個(gè)范圍內(nèi)匹配數(shù)據(jù),若匹配成功則執(zhí)行相關(guān)命令并結(jié)束整個(gè)條件測(cè)試;若數(shù)據(jù)不在所列出的范圍內(nèi),則去執(zhí)行星號(hào)(*)中所定義的默認(rèn)命令。case條件測(cè)試語(yǔ)句的語(yǔ)法結(jié)構(gòu)如下。case變量值in

模式1)命令序列1

;;模式2)命令序列2;;……*)默認(rèn)命令序列esac4計(jì)劃任務(wù)服務(wù)程序計(jì)劃任務(wù)經(jīng)驗(yàn)豐富的服務(wù)器運(yùn)維管理工程師可以使Linux操作系統(tǒng)在無(wú)須人為介入的情況下,在指定的時(shí)間段自動(dòng)啟用或停止某些服務(wù)或命令,從而實(shí)現(xiàn)運(yùn)維的自動(dòng)化。接下來(lái)講解如何設(shè)置服務(wù)器的計(jì)劃任務(wù)服務(wù)程序,把周期性、規(guī)律性的工作交給系統(tǒng)自動(dòng)完成。計(jì)劃任務(wù)分為一次性計(jì)劃任務(wù)與長(zhǎng)期性計(jì)劃任務(wù)。一次性計(jì)劃任務(wù):今晚11點(diǎn)30分開(kāi)啟網(wǎng)站服務(wù)。長(zhǎng)期性計(jì)劃任務(wù):每周一的凌晨3:25把/home/wwwroot目錄打包備份為backup.tar.gz。計(jì)劃任務(wù)顧名思義,一次性計(jì)劃任務(wù)只執(zhí)行一次,一般用于滿足臨時(shí)的工作需求??梢杂胊t命令實(shí)現(xiàn)這種功能,只需要寫(xiě)成【at時(shí)間】的形式就可以。如果想要查看已設(shè)置好但還未執(zhí)行的

一次性計(jì)劃任務(wù),可以使用【at-l】命令;要想將其刪除,可以用【atrm】任務(wù)序號(hào)。在使用at命令設(shè)置一次性計(jì)劃任務(wù)時(shí),默認(rèn)采用的是交互式方法。例如,使用下述命令將系統(tǒng)設(shè)置為在今晚23:30自動(dòng)重啟網(wǎng)站服務(wù)?!綼t

23:30】

at

>

systemctl

restart

httpdat

>

此處請(qǐng)同時(shí)按下Ctrl

+

D組合鍵來(lái)結(jié)束編寫(xiě)計(jì)劃任務(wù)job

3

at

Mon

Apr

27

23:30:00

2017【at

-l】3

Mon

Apr

27

23:30:00

2017

a

root計(jì)劃任務(wù)如果讀者想挑戰(zhàn)一下難度更大但更加簡(jiǎn)捷的方式,可以把前面學(xué)習(xí)的管道命令符(任意門(mén))放在兩條命令之間,讓at命令接收前面echo命令的輸出信息,以達(dá)到通過(guò)非交互式的方式創(chuàng)建一次性計(jì)劃任務(wù)的目的?!緀cho"systemctlrestarthttpd"|at23:30】【at-l】如果不小心設(shè)置了兩個(gè)一次性計(jì)劃任務(wù),可以使用下面的命令刪除其中一個(gè)?!綼trm3】【at-l】周期任務(wù)如果希望Linux操作系統(tǒng)能夠周期性地、有規(guī)律地執(zhí)行某些具體的任務(wù),那么Linux操作系統(tǒng)中默認(rèn)啟用的crond服務(wù)簡(jiǎn)直再適合不過(guò)了。創(chuàng)建、編輯計(jì)劃任務(wù)的命令為【crontab-e】,查看當(dāng)前計(jì)劃任務(wù)的命令為【crontab-l】,刪除某條計(jì)劃任務(wù)的命令為【crontab-r】。

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論