學習linux的第5天

一、Vim編輯器與Shell命令腳本

        1.Vim文本編輯器:設置了三種模式:1.命令模式 ;2.輸入模式;3.末行模式

                                    打開Vim編輯器時,默認進入命令模式。

                                    從命令模式進入輸入模式:按a(下一個字符)鍵,i(當前字符)鍵,o(下一行)鍵中隨便一個鍵進入輸入模式

                                   從輸入模式進入命令模式:Esc鍵

                                  從命令模式進入末行模式:按:鍵

                                  從末行模式進入命令模式:Esc鍵

              Vim中常用的命令:  dd    刪除光標所在整行 ; 5dd    刪除從光標處開始的5行;yy  複製光標所在整行;  5yy 複製從光標處開始的5行; n 顯示搜索命令定位到的下一個字符串;N顯示搜索命令定位到的上一個字符串;u 撤銷上一步的操作;p 將之前刪除或複製過的數據粘貼到光標後面。

               末行模式中的命令: :w 保存; :q 退出; :q! 強制退出(放棄對文檔的修改內容);:wq! 強制保存退出;:set nu  顯示行號;:set nonu 不顯示行號;:命令  執行該命令;:整數  跳轉到該行;:s/one/two 將當前光標所在行的第一個one替換成two;:s/one/two/g  將當前光標所在行的所有one替換成two;:%s/one/two/g 將全文中的所有one替換成two;?字符串   在文本中從下至上搜索該字符串; /字符串   在文本中從上至下搜索該字符串。

       2.配置主機名稱: vim /etc/hostname  裏面修改主機名並保存退出文檔,使用hostname命令檢查是否修改成功

                           或: hostnamectl set-hostname 主機名

        3.配置網卡信息:vim /etc/sysconfig/network-scripts/ifcfg-eno160 裏面修改相關網卡信息並保存退出文檔。

                                 重啓網卡命令:systemctl restart network

       4.shell腳本:工作方式有交換式和批處理

                           第一行的腳本聲明(#!):告訴系統使用哪種shell解釋器來執行該腳本

                           第二行的註釋信息(#):對腳本功能和某些命令的介紹信息,日後看到這個腳本內容時,可以知道該腳本的作用或一些警告信息

                           第三行開始就是腳本命令

        5.接受用戶的參數:$0 當前Shell腳本程序的名稱;$#  總共有幾個參數;$*  所有位置的參數值;$? 顯示上一次命令的執行返回值;$1、$2、$3......    第N個位置的參數值。

        6.判斷用戶的參數:測試語句格式  [ 條件表達式 ]

                                     按測試對象來劃分,條件測試語句分爲:文件測試語句;邏輯測試語句;整數值比較語句;字符串比較語句。

            6.1    文件測試語句參數:-d 測試文件是否爲目錄類型; -e 測試文件是否存在; -f 判斷是否爲一般文件;-r 測試當前用戶是否有權限讀取;-w 測試當前用戶是否有權限寫入;-x 測試當前用戶是否有權限執行

                                         比如:[ -d /etc/fstab]        [ -f /etc]

            6.2    邏輯測試語句:&& 當前面的命令執行成功纔會執行後面的命令;||  當前面的命令執行失敗纔會執行後面的命令;! 條件測試中的判斷結果取相反值

                                            [ ! $USER = root ] && echo "user" || echo "root"

            6.3    整數比較運算符:-eq 是否等於;-ne 是否不等於;-gt 是否大於;-lt 是否小於;-ge 是否大於等於;-le 是否小於等於。

                                           [ `free -m | grep Mem: |awk '{print $4}'` le 1024 ] && echo "BUZU" || echo "CHONGZU"

           6.4    字符串比較運算符:= 比較字符串內容是否相同; != 比較字符串內容是否不同;-z 判斷字符串內容是否爲空。

                                            [ $LANG != "en.US" ] && echo "Not en.US"

       7.if條件測試語句:從技術角度看,分爲單分支結構,雙分支結構,多分支結構。

                                   單分支:if  then fi                       雙分支:if  then else fi              多分支:if  then elif else fi

                                  不匹配條件判斷語句,自動執行最終的兜底策略




                 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章