工作中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
推薦閱讀: