1. 程式人生 > 實用技巧 >Linux-03常用指令

Linux-03常用指令

網絡卡配置檔案詳解

如下

網路配置檔案:
/etc/sysconfig/network

網路介面配置檔案:
/etc/sysconfig/network-scripts/ifcfg-INTERFACE_NAME
DEVICE=: 關聯的裝置名稱,要與檔名的後半部“INTERFACE_NAME”保持一致; 
BOOTPROTO={static|none|dhcp|bootp}: 引導協議;要使用靜態地址,使用static或none;dhcp表示使用DHCP伺服器獲取地址;
IPADDR=: IP地址
NETMASK=:子網掩碼
GATEWAY=:設定預設閘道器;
ONBOOT=:開機時是否自動啟用此網路介面;
HWADDR
=: 硬體地址,要與硬體中的地址保持一致;可省; USERCTL={yes|no}: 是否允許普通使用者控制此介面; PEERDNS={yes|no}: 是否在BOOTPROTO為dhcp時接受由DHCP伺服器指定的DNS地址;

vim

所有的 Unix Like 系統都會內建 vi 文書編輯器,其他的文書編輯器則不一定會存在。

但是目前我們使用比較多的是 vim 編輯器。

vim 具有程式編輯的能力,可以主動的以字型顏色辨別語法的正確性,方便程式設計。

#方法,命令
vi
vim
使用vi開啟oldboy.py,預設是命令模式,需要輸入a/i進入編輯模式,然後輸入文字"Life is short,i use python
" 按下esc鍵,回到命令模式 輸入 :wq! 強制儲存退出w write 寫入q quit 退出! 強制 或者 :x 儲存退出------:q 不儲存退出:q! 不儲存強制退出

檢視檔案內容

cat命令用於檢視純文字檔案(常用於內容較少的)

#檢視檔案,顯示行號cat -n xxx.py#貓,檢視檔案
cat xxx.py#在每一行的結尾加上$符[root@master tmp]# cat -E 1.txt#追加文字到檔案cat >>/tmp/oldboy.txt << EOF唧唧復唧唧木蘭開飛機開的什麼機波音747EOF

more命令

1.more命令用於檢視內容較多的文字,例如要看一個很長的配置檔案,cat檢視內容螢幕會快速翻滾到結尾。

2.more命令檢視文字會以百分比形式告知已經看到了多少,使用回車鍵向下讀取內容

more /etc/passwd
按下空格space是翻頁
按下b鍵是上一頁
回車鍵向下讀取內容

Linux快捷鍵

1.tab鍵    用於自動補全命令/檔名/目錄名
2.ctrl + l  清理終端顯示 
3.clear/cls  清理終端顯示
4.ctrl + c 終止當前操作

echo命令

echo命令用於在終端輸出字串或變數提取後的值,格式是“echo 【字串|$變數】

#預設吧內容顯示到終端上    
echo "666"
#平時比較低調,不想讓別人知道他666,怎麼辦?要麼把“666”寫入到檔案裡!
echo "666" > /tmp/chaoge.txt
echo $PATH #取出列印PATH的值

特殊符號

輸入/輸出 重定向符號1.>>    追加重定向,把文字追加到檔案的結尾
2.>     重定向符號,清空原檔案所有內容,然後把文字覆蓋到檔案末尾
3.< 輸入重定向4.<< 將輸入結果輸入重定向echo "oldboy-python666" > /tmp/oldboy.txtecho "chaoge666" >>
/tmp/oldboy.txtcat >>/tmp/oldboy.txt << EOF
------------------------------------
我想把命令執行的結果資訊,寫入到檔案中ip addr > /tmp/network.txt
#標準輸出重定向 把命令執行結果資訊,放入到檔案中3.萬用字元 ls -l /etc/us*

複製(拷貝)命令

複製 > copy > cp
#移動xxx.py到/tmp目錄下
cp xxx.py /tmp/
#移動xxx.py順便改名為chaoge.py
cp xxx.py /tmp/chaoge.py

Linux下面很多命令,一般沒有辦法直接處理資料夾,因此需要加上(引數) 
cp -r 遞迴,複製目錄以及目錄的子孫後代
cp -p 複製檔案,同時保持檔案屬性不變    可以用stat
cp -a 相當於-pdr
#遞迴複製test資料夾,為test2
cp -r test test2

cp是個好命令,操作檔案前,先備份
cp main.py main.py.bak

移動命令

移動(搬家)命令  > move > mv

cd /home
#把老男孩從沙河這破地方,搬到朝陽去
mv /home/shahe/oldboy /tmp/chaoyang

檔案/資料夾改名
mv x.log xx.log

刪除命令

刪除  > remove > rm
引數  -i  需要刪除確認
   -f  強制刪除
     -r  遞迴刪除目錄和內容
     
cd /tmp
rm oldboy.py
#預設有提示刪除,需要輸入y
rm -f oldboy.py #不需要提示,強制刪除
#rm預設無法刪除目錄,需要跟上引數-r
rm -rf /tmp/oldboy/

--------
友情提醒:初學者使用rm命令,隨時快照虛擬機器

查詢命令

#Linux裡如何找到需要的檔案 例如 oldboy.py
find 在哪裡(目錄) 什麼型別(檔案型別) 叫什麼名字(檔名)
引數
-name 按照檔名查詢檔案
-type 查詢某一型別的檔案,諸如:
b - 塊裝置檔案。
d - 目錄。
c - 字元裝置檔案。
p - 管道檔案。
l - 符號連結檔案。
f - 普通檔案。
s - socket檔案

find /tmp/ -type f  -name "oldboy.py"

#找出/tmp所有以 .txt 結尾的檔案
find /tmp/ -type f -name "*.txt"

#找到/etc下所有名字以host開頭的檔案
find /etc -name 'host*'

#找到/opt上一個名為settings.py
find /opt -name 'settings.py'

管道命令

Linux提供的管道符“|”講兩條命令隔開,管道符左邊命令的輸出會作為管道符右邊命令的輸入。
常見用法:
#檢查python程式是否啟動
ps -ef|grep "python"

#找到/tmp目錄下所有txt檔案
ls /tmp|grep '.txt'

#檢查nginx的埠是否存活
netstat -tunlp |grep nginx

語法:
grep [引數] [--color=auto] [字串] filename
引數詳解:
-i : 忽略大小寫
-n : 輸出行號
-v : 反向選擇
--color = auto : 給關鍵詞部分新增顏色

grep "我要找什麼" /tmp/oldboy.txt
#排除 -v,排除我要找的東西
grep -v "我要找什麼 /tmp/oldboy.txt

例題,找出/etc/passwd下root使用者所在行,以及行號,顯示顏色

cat /etc/passwd |grep '^root' --color=auto -n

找出/etc/passwd所有不允許登入的使用者

grep /sbin/nologin /etc/passwd

head、tail命令

head顯示檔案前幾行,預設前10行
tail顯示檔案後幾行,預設後10行
#檢視前兩行
head -2 /tmp/oldboy.txt
#檢視後兩行
tail -2 /tmp/oldboy.txt
#持續重新整理顯示
tail -f xx.log

#顯示檔案10-30行
head -30 /tmp/oldboy.txt |tail -21

別名alias命令

Linux如何提示你,在使用這些命令時候,提醒你小心呢?
#檢視系統別名
alias
預設別名
alias cp='cp -i'
alias egrep='egrep --color=auto'
alias fgrep='fgrep --color=auto'
alias grep='grep --color=auto'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde'

別名作用是:

我們在linux中使用cp時候相當於執行了cp -i
-i:刪除已有檔案或目錄之前先詢問使用者;

#別名用比較危險的操作,防止你犯錯 


#讓系統顯示 do not use rm
echo do not use rm
#設定rm別名
alias rm='echo do not use rm'
#設定別名永久生效,寫入到/etc/profile(針對登入使用者的合同,設定環境變數)
vim /etc/profile #編輯檔案
G  快速到達最後一行
o  當前行下一行,建立一個新行,進入編輯模式
source /etc/profile #讀取檔案(合同生效)
---------------
#取消別名
unalias rm

scp命令

Linux scp命令用於Linux之間複製檔案和目錄。

scp是 secure copy的縮寫, scp是linux系統下基於ssh登陸進行安全的遠端檔案拷貝命令。

語法
scp 【可選引數】 本地原始檔 遠端檔案標記
引數

-r :遞迴複製整個目錄
-v:詳細方式輸出
-q:不顯示傳輸進度條
-C:允許壓縮
例項


#傳輸本地檔案到遠端地址
scp 本地檔案  遠端使用者名稱@遠端ip:遠端資料夾/
scp 本地檔案  遠端使用者名稱@遠端ip:遠端資料夾/遠端檔名

scp /tmp/chaoge.py [email protected]:/home/
scp /tmp/chaoge.py [email protected]:/home/chaoge_python.py

scp -r  本地資料夾  遠端使用者名稱@遠端ip:遠端資料夾/
scp -r /tmp/oldboy [email protected]:/home/oldboy

#複製遠端檔案到本地
scp [email protected]:/home/oldboy.txt /tmp/oldboy.txt
scp -r [email protected]:/home/oldboy /home/

du命令

Linux du命令用於顯示目錄或檔案的大小。

du會顯示指定的目錄或檔案所佔用的磁碟空間。

用法
du 【引數】【檔案或目錄】
-s 顯示總計
-h 以k,M,G為單位顯示,可讀性強
顯示目錄或檔案所佔空間
#什麼都不跟,代表顯示當前目錄所有檔案大小
du   

#顯示/home的總大小
du -sh /home

top命令

top 命令用於動態地監視程序活動與系統負載等資訊

第一行 (uptime)
系統時間 主機執行時間 使用者連線數(who) 系統1,5,15分鐘的平均負載
第二行:程序資訊
程序總數 正在執行的程序數 睡眠的程序數 停止的程序數 殭屍程序數
第三行:cpu資訊
1.5 us:使用者空間所佔CPU百分比
0.9 sy:核心空間佔用CPU百分比
0.0 ni:使用者程序空間內改變過優先順序的程序佔用CPU百分比
97.5 id:空閒CPU百分比
0.2 wa:等待輸入輸出的CPU時間百分比
0.0 hi:硬體CPU中斷佔用百分比
0.0 si:軟中斷佔用百分比
0.0 st:虛擬機器佔用百分比
第四行:記憶體資訊(與第五行的資訊類似與free命令)

8053444 total:實體記憶體總量
7779224 used:已使用的記憶體總量
274220 free:空閒的記憶體總量(free+used=total)
359212 buffers:用作核心快取的記憶體量
第五行:swap資訊
8265724 total:交換分割槽總量
33840 used:已使用的交換分割槽總量
8231884 free:空閒交換區總量
4358088 cached Mem:緩衝的交換區總量,記憶體中的內容被換出到交換區,然後又被換入到記憶體,但是使用過的交換區沒有被覆蓋,交換區的這些內容已存在於記憶體中的交換區的大小,相應的記憶體再次被換出時可不必再對交換區寫入

chattr命令

給檔案加鎖,只能寫入資料,無法刪除檔案

chattr +a test.py
chattr -a test.py

lsattr命令

檢視檔案隱藏屬性

lsattr test.py

Linux命令查詢手冊

http://linux.51yip.com/
http://man.linuxde.net/