Linux常見符号和指令
重定向符号
- 在shell中常見的重定向符号有 > 和 >>
-
符号>
-
符号>>
-
管道符
-
指令格式
指令1 | 指令2
指令1執行後的結果,傳遞給指令2使用
其他符号
- 背景展示符
& 就是将一個指令從前台轉入到背景執行&
- 全部資訊符号
2>&1
1 表示正确輸出的資訊
2 表示錯誤輸出的資訊
2>&1 代表所有輸出的資訊
-
Linux系統垃圾桶
/dev/null 是Linux下的一個裝置檔案,特點是無限大
常見指令
-
grep指令 文本搜尋指令
指令格式
grep [參數] [關鍵字] <檔案名>
- 參數詳解
-c 隻輸出比對行的計數
-n 顯示比對行及行号
-v 顯示不包含比對文本的所有行
- 精确定位錯誤代碼
grep -nr [錯誤關鍵字]
-
sed指令 編輯檔案 以行為機關
指令格式
sed [參數]'比對條件 動作' 檔案名
- 參數詳解
參數為空 表示sed的操作效果,實際上不對檔案進行編輯
-i 表示讀檔案進行編輯
注意在mac中使用-i參數,需要用
-i ''
- 比對條件
數字行号 或者關鍵字比對
關鍵字比對格式:
隔離符号'/關鍵字/'
可以換成 @ # !/
- 動作詳解
-a 在比對到的内容下一行增加内容
-i 在比對到的内容上一行增加内容
-d 删除比對到的内容
-s 替換比對到的内容
- 指令示範
s#原内容#替換後内容#
- 替換每行首個比對内容
sed -i 's#原内容#替換後内容#' 檔案名
- 替換全部比對内容
sed -i 's#原内容#替換後内容#g'
- 指定行号替換首個比對内容
sed -i'行号s#原内容#替換後内容#' 檔案名
- 首航指定列号替換比對内容:
sed -i 's#原内容#替換後内容#列号' 檔案名
- 指定行号列号比對内容
sed -i '行号s#原内容#替換後内容#列号' 檔案名
- 在指定行号的下一行增加内容
如果增加多行,可以在行号位置寫個範圍值,彼此中間用逗号隔開sed -i '行号a\增加内容' 檔案名
- 在指定行号的當行增加内容
如果增加多行,可以在行号位置寫個範圍值,彼此中間用逗号隔開sed -i '行号i\增加的内容' 檔案名
- 指定行号删除
如果增加多行,可以在行号位置寫個範圍值,彼此中間用逗号隔開sed -i '行号d' 檔案名
-
awk指令 能以行和列來處理檔案
指令格式
awk [參數] '動作' 檔案名
- 常見參數
- 常見動作
print 顯示内容
顯示目前所有内容$0
顯示目前行的第n列内容,如果存在多個$n
,中間用$n
隔開,
- 常見内置變量
NR 指定顯示行的行号
NF 輸出最後一列的内容
OFS 輸出格式的列分隔符,預設是空格
FS 輸入檔案的列分隔符,預設是連續的空格和tab
-
find指令
指令格式
find [路徑] [參數] [關鍵字]
- 參數詳解
-name 按照檔案名查找檔案
-perm 按照檔案權限來查找檔案
-user 按照檔案屬主來查找檔案
-group 按照檔案所屬的組來查找檔案
-type 查找某一類型的檔案
-size n: [c] 查找檔案長度為n塊的檔案,帶有c時表示檔案長度以位元組計算
-depth 查找檔案時,首先查找目前目錄中的檔案,然後在其子目錄中查找