工作中Linux常用指令整理

df -h

查看文件系統掛在(u查看系統內存是否被佔滿)

du -s ./(./代表當前路徑)

給出的目錄總大小

du -s ./*

給出給出目錄下每個項的自己大小

du -a ./

給出目錄及子目錄每一個項的大小

pwd

輸出當前目錄

echo String/$PATH

輸出String / 或者輸環線變數中的path

cd / cd ~ 回到當前用戶的工作空間

mkdir

mkdir abc 創建abc

mkdir -p ./a/b/c 創建a和a的子目錄

mkdir ./sxt/adir ./sxt/bdir 創建多個文件(同級)

mkdir ./sxt/{x,y}dir 創建多個文件(同級優先)

rm

rm -f file 不需要詢問

rm -fr dir 刪除目錄和子目錄r為遞歸刪除

cp

file desc 拷貝文件 cp a /root/

cp -r dir desc

mv

mv src desc

mv [rename]

ln:絕對路徑,不要寫相對路徑 鏈接

ln [-s](加了-s為軟鏈接為指向,刪除源文件就丟失了,類似於windows快捷方式) /path/src /path/desc

文本操作:

cat 列印指定文件內容

more 顯示一部分顯示完退出

less 顯示一部分顯示完不退出。可以採用B會看

head 查看開頭

tail 查看結尾

tail -f ooxx.log 查看日誌

pipe: |

head -3 /etc/profile | tail -1

echo "/" | xargs ls -l

cd /etc/

stat ./profile 查看 profile metadata 元數據

touch

vi

vi +23 profile 定位到profile第23行

vi +/String 搜索字元串 跳到出現字元的那一行

編輯模式

a 出現在當前字元的後面轉為輸入模式

i 出現在當前字元的前面轉為輸入模式

o 出現在當前字元的下面一行轉為輸入模式

O 出現在當前字元的前面一行轉為輸入模式

A 出現在當前字元的行尾轉為輸入模式

I 出現在當前字元的行首轉為輸入模式

x 刪除游標位置字元

r 替換游標所在單詞

dw 刪除單詞

dd 刪除行

* u 撤銷

* ctrl+r 重做撤銷

* . 重複上次操作

移動游標

G 文章末尾

gg 文章開頭

3G 到第三行

* ctrl+f/b 翻屏

末行模式

:set nu 設置行號

:/String 查找 n向下 N向上

:1,12d 刪除1到12行

:1,12y 複製P粘貼

* 查找替換

:1,$s/String1/String2(/gi) 1,$全文 替換 /可以為@,# i為忽略大小寫 g為全局

:.,+2y 複製當前行和下面兩行 p粘貼

: n 行號

: +n 偏移n行

: $ 末尾行

:. 當前游標所在行

:% 全文

刪除

% s/hello world/ 刪除全文本的hello world

cut:

cat grep.txt

cut -d -f1 grep.txt d 後面的是用什麼切割

cut -d -f2 grep.txt f 顯示第幾列

cut -d -f2 -s grep.txt

cut -d -f1,3 -s grep.txt

cut -d -f1-3 -s grep.txt

sort:

banana 12

apple 1

orange 8

sort sort.txt

sort -t -k2 sort.txt t 按照String切割

cat sort.txt k2 依第二列來排序

sort -t -k2 -n sort.txt n 按數值排序

wc:

wc sort.txt 5 9 43 ab

man wc 5列 9個單純 43個字母 文件名

wc -l sort.txt 只顯示列

cat sort.txt | wc -l 傳值可以去除文件名

ls -l /etc | wc -l

sed:

sed [options] AddressCommand file ...

-n: 靜默模式,不再默認顯示模式空間中的內容

-i: 直接修改原文件

-e SCRIPT -e SCRIPT:可以同時執行多個腳本

-f /PATH/TO/

-r: 表示使用擴展正則表達式

sed:行編輯器Command

d: 刪除符合條件的行; sed"1d" sort.txt

p: 顯示符合條件的行;

a string: 在指定的行後面追加新行,內容為string


:可以用於換行

i string: 在指定的行前面添加新行,內容為string

r FILE: 將指定的文件的內容添加至符合條件的行處

w FILE: 將地址指定的範圍內的行另存至指定的文件中;

s/pattern/string/修飾符: 查找並替換,默認只替換每行中第一次被模式匹配到的字元串

g: 行內全局替換

i: 忽略字元大小寫

s///: s###, s@@@

(), 1, 2

sed:行編輯器Address

可以沒有

給定範圍

查找指定行/str/

sed "1d" sort.txt

sed -i "1ahello world" sort.txt

sed -n "/[0-9]/p" sort.txt

cp /etc/inittab ~

sed "s/(id:)[0-6](:initdefault:)/152/" inittab


推薦閱讀:

TAG:Linux | Linux開發 | Linux系統管理 |