第一章 定義、概念、常識
第二章 linux常用命令詳解
******指令+範圍可構成指令*******
例如:dw 是由刪除指令 d 與範圍 w 所組成,代表刪除乙個字 d(elete) w(ord)
「a5yy -----> 五行放入a剪下板中
「ap -----> 貼上a剪下板
「bp -----> 貼上b剪下板
vim中,命令前加數字代表該命令做多少次如6i,插入完回到命令模式產生6個重複的插入內容.
2.8.2 sed
1.sed -e 『sed command』 -e 『sed command』
2.sed 『sed command』; 『sed command』; ……
sed command:
s:替換
d:刪除
p:列印
g:全部
例:sed -n -e 『///s/bash/csh/g』 -e 『///p』 表示以:作為分隔符.
awk -f: 『begin end < /etc/passwd
計算/etc/passwd中shell為/bin/bash的個數.
第三章 正規表示式
.:任意乙個字元.
*:任意多個前一字元
^:開頭(行)
$:結尾(行)
:方括號的任意乙個.
{}:重複次數
/單詞^$:空行.
^a以a開頭的行a$以a結尾的行a?乙個或0個單獨的a
a+<=>a* a,aa,aaa甚至更多個a.
^[a-t]以a-t任意乙個開頭 ^[^a-t]不是a-t任意乙個開頭.
^[a,b,c] a,b,c任意乙個開頭.
/以s開頭k結尾中間2個字母的單詞
/ 以sky結尾的單詞
a/ a重複18次.
第四章 輸入輸出重定向及管道
4.1 linux工具/命令種類
過濾器:從乙個**作為輸入,有輸出源
編輯器:編輯工具
互動工具:需要互動的工具命令
4.2 重定向
重定向是改變預設輸出輸入.
預設的輸出輸入
stdin(0) :標準輸出流
stdout(1) :標準輸入流
stderr(2) :標準錯誤流
輸出重定向
>:正確的輸出(true)
2>:錯誤的輸出(false)
>file 2>&1 (正確錯誤的資訊都重定向到file)
&>file 同上
>的延伸用法:> 檔名 檔案存在則更新檔案3個時間不存在則建立.
>> file :重定向到file的末尾(銜接)
輸入重定向
<:輸入重定向
《的用法:
1.讓系統一次性的將鍵盤的全部輸入線送入虛擬的」當前文件」再一次性的追加的文件末尾.
2.需要一堆字元、符號或字串作為起始終結識別符號。
3.可選任意符號作為起始終結識別符號。
例:cat << eee
>aaa aaa
>bbb bbb
>ccc ccc
>eee-- > 碰到eee退出輸入 輸出---->
4.3 管道
將上一條命令作為下一條命令的引數 |.
例:ls -l /etc |grep 『^l』 |tee /dev/tty1 |wc –l
求/etc中鏈結檔案個數.tee代表複製乙份結果.
第五章 bash中的快捷鍵和運算子
5.1 bash中的快捷鍵
ctrl + s 停止螢幕輸出
ctrl + q 恢復螢幕輸出
ctrl + d 標準輸入結束
ctrl + r 呼叫命令歷史
ctrl + l 清屏
ctrl + c 當前任務
5.2 bash中的運算子
!n:執行命令歷史中的第n個命令
!!:執行命令歷史中的最後一條命令
!$:前乙個命令的最後乙個引數
$?:上乙個命令是否成功執行(true:0)(false:1)
$變數名:引用某變數的值. #:注釋
*:任意多個任意字元 ~:主目錄 &:表後台執行 %n:後台第n個任務.
[abc],[a-z],[a-za-z]:方括號中任意乙個
{}:表枚舉例touch 建立9個檔案
abc():宣告乙個函式abc(函式體用大括號括起來)
():表示在子shell中執行=>打包命令
「」:忽略空格的特殊意義.
『』:忽略所有字元的特殊含義
``:中間的內容作為shell命令先執行.
/:逃逸符,洗掉字元的特殊意義.
;:乙個命令結束.
=:賦值,=號兩邊不加空格.
[ ]:內容兩邊加空格,表判斷.例:[ -f /etc/passwd ]
f 是否檔案 d是否目錄 c字元裝置 b塊裝置 l鏈結檔案 x可執行 r可讀 w可寫
. 《檔案》:讀檔案,把檔案中每行當作乙個命令,依次執行.
例: . /etc/passwd ->執行/etc/passwd每行語句 (執行結果是一堆錯誤)
|:管道符
&&:前乙個命令為true執行下乙個.
||:前乙個命令為false執行下乙個.
<,>,>>,<<:輸入輸出重定向.
$$:當前shell的pid
[ $user = root ]:判斷=號兩邊是否相等.
$:表示內為算術表示式.
::分隔符.
數值比較時的運算子
相等 -eq
不等 -nq
大於 -gt
小於 -lt
大於或等於 -ge
小於或等於 -le
為空 -z
不為空 -n
例[ $a -eq $b ] -> a=b? [ -z $a ] ->a為空? [ $a -gt $b ] ->a>b?
5.3 bash相關的配置檔案
login shell時載入
/etc/profile
~/.bash.profile
每次shell啟動時載入
/etc/bashrc
~/.bashrc
退出shell載入 ~/.bash_logout
命令歷史 ~/.bash_history
第六章 shell 程式設計基礎
6.1 shell 指令碼互動
1.用引數互動 $1,$2,$3……第一二三……個引數.
2.用命令進行互動
-read
-echo
-printf
6.2 流程控制
6.2.1 條件控制
[ ], &&, ||, if, case
if語法:
if 條件
then 動作
elif 條件
then 動作
else
動作fi
case 語法:
case 陣列 in
a)動作
;;b)
動作;;
esac
a,b代表陣列中的某個變數.
6.2.2 迴圈控制
while utile for
break continue :中斷
while語法
while 條件(為真執行迴圈體)
do動作
done
untile 語法和while 相同不過是當條件為假時執行迴圈體.
for語法
for 變數 in 陣列
do動作
done
6.3 shell除錯
使用bash命令
-v -b 執行過程課件
-x 顯示變數結果
echo用法-e:表示可以使用格式控制符.
-n:不自動換行.
linux基礎總結
1.linux常見命令 linux嚴格區分大小寫 1.檢視目錄內容 l 長格式顯示 h 大小單位 a 顯示所有 d 看目錄的資訊 例如 ls l 以長格式的方式檢視根目錄的內容 縮寫 ll ls a 檢視所有檔案 ls ld root 檢視root目錄的資訊 2.對檔案的操作 touch 檔名 如果...
linux 基礎總結
linux的網路環境 主機名 hostname 網路對映 etc hosts將ip位址與主機名對應 重啟網路 service network restart status 常用命令 1建立mkdir p touch vi 2刪除rmdir 刪除空目錄 rm rf遞迴刪除f不提示直接確認刪除 3複製c...
LINUX基礎文件總結
1 cp scp 命令作用 複製檔案 用法示例 cp aaa bbb scproot mz.naodui.com home yanyun meizitu db target bak 從 本地 複製到 遠端 scp home daisy full.tar.gz root 172.19.2.75 hom...