Vi編輯器常用命令以及Shell程式設計

2021-10-09 23:47:15 字數 4435 閱讀 7209

配置(或修改)網路:

vi /etc/sysconfig/network-scripts/ifcfg-eth0

重啟網路(網絡卡):

/etc/init.d/network restart

service network restart

設定網絡卡:

setup

修改 mv

編輯 vi

重啟系統 reboot

檢視當前所在資料夾: /pwd

查詢系統執行記憶體 df -h

檢視 ls

建立有內容的文字文件 :echo 123456789 > 123.txt

拷貝 cp 11.txt 22.txt

返回上一級目錄 cd …/

刪除 rmdir /s/q 檔案

新增空檔案 touch

新增檔案內容 echo

行首 ^或0

行末 $

檔案頂部 gg

檔案底部 g

指定檔案行數 n+gg(g)或:n

向上翻頁 ctrl + b

向下翻頁 ctrl + f

從游標位置刪除到單詞末尾 dw

從游標位置刪除到單詞開頭 d0

從游標位置刪除到段落尾 d}

從游標位置向下連續刪n行 ndd

vim 檔名 + 會定位到檔案末尾

vim 檔名 +2 會定位到檔案第二行

上下左右 kjhl

前後 bw

檔案頂部 gg

檔案末尾 g

螢幕頂部 h

螢幕中間 m

螢幕底部 l

yum install -y tree 安裝tree外掛程式

yum search rxzx

yum install -y lrzsz

reboot重啟

set nu 行號

---------使用者許可權--------

exit 退出當前使用者

vi /etc/passwd 進行使用者許可權修改

su 使用者名稱 切換使用者

useradd -g 組名 使用者名稱 建立新使用者

userdel 使用者名稱 刪除使用者

userdel -r 使用者名稱

--------chown -r u使用者名稱 : g組名 t檔名 :將 t 檔案 修改為 u所屬使用者 g所屬組

halt 關機

free -h 查詢顯示記憶體使用

df -h 查詢磁碟空間

top 查詢cpu記憶體等使用情況

du -h 檢視某一目錄所佔空間大小

ps aux 查詢程序詳細資訊

-------cut : 《 cut根據條件從命令結果中提取對應內容》

-c (第幾個字元)

-d (指定分隔符)

-f (顯示第幾段內容)

-------sort : 《sort可針對文字檔案的內容,以行為單位來排序》

-u (去重)

-n (數值從大到小排序)

-r (倒敘)

-t (指定分隔符)

-k (根據哪一列排序)

--------wc : 《顯示指定檔案位元組數, 單詞數, 行數資訊》

-w (單詞數)

-c (位元組數)

-l (行數)

-------uniq : 《uniq 命令用於檢查及刪除文字檔案中重複出現的行,一般與 sort 命令結合使用。》

-c (計數)

cut按照字元提取 head -2 1.txt | cut -c 5

指定分隔符 head -2 1.txt | cut -d 『:』 -f 1,2

sort

文字排序 sort 檔名

文字排序反轉 sort -r 檔名

文字排序去重 sort -u 檔名

數值按大小排序 sort -n 檔名

指定分隔符、指定排序列 sort -t 『分隔符』 -k2nr 檔名

wc檢視檔案基本資訊 wc 檔名

檢視檔案行數 wc – l 檔名

檢視檔案單詞數 wc -w 檔名

檢視檔案位元組 wc -c 檔名

檢視多個檔案資訊 wc 檔案1 檔案2 檔案3

uniq

與sort連用

排序、去重 cat 5.txt | sort | uniq

排序、去重計算總數 cat 5.txt | sort | uniq -c

tee資料定位到多個檔案 cat 5.txt | tee a.txt b.txt c.txt

tr小寫i 替換成 echo 「itheima」 | tr 『i』 『i』

把 hello 轉成 小寫 echo 「hello」 |tr 『[a-z]』 『[a-z]』

刪除數字 echo 『abc1d4e5f』 | tr -d 『[0-9]』

split

按照檔案大小切分 split -b 10k 被切分的檔案

按照行數進行切分 split -l 1000 被切分的檔案

awk模糊查詢 awk 『/zhangsan|lisi/』 score.txt

按照分隔符拆分,根據角標顯示

awk -f 『,』 『』 1.txt

按照分隔符拆分,根據角標顯示並指定分隔符

awk -f 『,』 』 』 1.txt

支援函式 awk -f 『,』 『』 1.txt

if判斷語句

awk -f 『,』 『』 score.txt

shell程式設計

shell 指令碼的直譯器

/bin/sh

/bin/bash

/sbin/nologin

/bin/dash

/bin/tcsh

/bin/csh

指令碼的編寫規範

首行描述直譯器 #!/bin/bash

執行指令碼的三種方式

1、bash 指令碼名稱 指令碼引數

2、 sh 指令碼名稱 指令碼引數

3、 ./指令碼名稱 指令碼引數【./指令碼名稱之間沒有空格】【chmod 777 指令碼名稱】

變數的宣告

變數名=」值」【中間不能有空格】

變數名要求 字母或下劃線或數字(開頭不能是數字)構成

變數的引用

使用$ 或 ${}引用變數

刪除變數 唯讀變數

刪除 unset 變數名

唯讀 readonly 變數名

字串使用

雙引號(」」):內部可以使用變數

單引號(『』):內部所有的原樣輸出

反引號(``):表示可執行

字串長度及擷取

長度: echo $

擷取: echo $ 【在第二個字元開始擷取擷取兩位】

指令碼引數傳遞

bash 指令碼名 引數1 引數2 引數3 。。。。。。

指令碼內$0 指令碼名稱

$1 引數1

$2 引數2

$n 引數n

$* 所有引數

$# 引數的個數

算數運算子

加法計算expr 2 + 2

乘法計算expr 2 \* 2

流程控制if

if [ $a -gt 10 ];then

**1elif [ $a -lt 10 ];then

**2else

**3fi

關係運算子

大於 小於 大於等於 小於等於 等於 不等於

-gt -lt -ge -le -eq -ne

迴圈for 迴圈

for aa in ***x

do迴圈體

done

while迴圈

while 條件 ;

do迴圈體

done

跳出迴圈

跳出所有迴圈 break

跳出當前迴圈,進入下一次迴圈 continue

case ()

case 值 in

結果1)

結果1對應的操作;;

結果2)

結果2對應的操作;;

結果3)

結果3對應的操作;;

esac

接收控制台資料

read 變數名

函式的使用

函式宣告: [function] 函式名()

函式呼叫

函式名 引數1 引數2 引數3

陣列

陣列宣告: 陣列名稱=(元素1 元素2 元素3 元素4)

陣列的使用

單個使用 echo 陣列名[角標] 【角標從0開始】

遍歷陣列 for var in $

doecho $var

done

檔案載入

在檔案中新增 . 指令碼名稱 或者 source 指令碼名稱

#!/bin/bash

source ./test1.sh # 載入test1.sh 的檔案內容

vi編輯器常用命令

vi編輯器常用命令 一般模式 游標移動 ctrl f 螢幕向前翻動一頁 ctrl b 螢幕向後翻動一頁 n按下數字鍵後再按空格鍵,游標向右移動這一行的n個字元 0 數字零 移動到本行的第乙個字元處 移動到這一行的最後乙個字元處 g 游標移動到檔案的最後一行 ng 游標移動到檔案的第n行 n游標向下移...

vi編輯器常用命令

vi編輯器有3種模式 命令模式 輸入模式 末行模式。掌握這三種模式十分重要 1.命令模式 vi啟動後預設進入的是命令模式,從這個模式使用命令可以切換到另外兩種模式,同時無論在任何模式下只要按一下 esc 鍵都可以返回命令模式。在命令模式中輸入字幕 i 就可以進入vi的輸入模式編輯檔案。2.輸入模式 ...

vi編輯器常用命令

對於vi的命令列,不需要特意的去記憶,寫下來,讓要用到的時候能找到就行 游標控制 h游標向左移 j游標向下移 k游標向上移 l or spacebar 游標向右移 w向前移動乙個單詞 b向後移動乙個單詞 e向前移動乙個單詞,且游標指向單詞的末尾 移到當前句子的首部 移到下乙個句子的首部 移到下一段的...