Linux shell經常使用命令

lastest edit: 12th Mar 2016正則表達式

格式: 

命令 [選項參數]  #命令說明shell

         經常使用可選參數   #參數說明               express

經常使用選項參數類型表示:編程

[OP] : optional arguments 可選參數緩存

[DIR] : directory 目錄(至關於Windows的文件夾)bash

[F] : file 文件網絡

[CMD]: command命令less

 

用戶及用戶組spa

#

root用戶標記命令行

$

普通用戶組標記

 

文件管理命令

文件及目錄管理命令

cd : Change Directory

cd [directory]    # change directory 改變目錄
cd .  # 返回當前目錄
cd ..  # 返回上一級目錄
cd ~
chmod    # 改變文件模式
umask    # 查看系統默認權限
pwd    # print work directory 顯示當前目錄
mkdir [DIR]                                                # make directory 建立新目錄
rmdir [DIR]                                                # remove diretory 移除目錄
rm [DIR or F]                                              # remove 移除目錄或者文件
rm  -f # forced 強制執行
    -i # 執行前彈出警告
    -I
cp [origin DIR or F] [targeted DIR or F]                   # copy 複製目錄或者文件
mv [origin DIR or F] [targeted DIR or F]                   # move 移動目錄或者文件
ln [origin DIR or F] [targeted DIR or F]                   # link 爲文件新建連接文件
find [F]                                                   # 查找文件

ls : LiSt

ls <option> <directory>

mkdir : MaKe DIRectory

mkdir <directory name>

touch

touch <file name>

cp : CoPy

cp <origin file> <new file>
cp -r <origin directory> <new directory>

mv : MoVe

mv <file>

rm : ReMove

rm <file>
rm -r <directory>

find

find <file name>

文件操做命令

touch    # 建立新文件
    -a  # 改變檔案的讀取時間記錄
    -m  # 改變檔案的修改時間記錄
    -c  # 加入目標檔案不存在,不會創建新的檔案
    -d  # 設定時間與日期
cat    # 查看文件內容(concatenate)
tail    # 查看文件末尾內容
more    # 使文件分屏顯示,指定最多顯示多少行
less    # 使文件分屏顯示,指定至少顯示多少行
wc    # 統計文件中的字符數(word count)

文件權限管理命令

chmod : CHange MODe

chmod <file> <access>

# access owner read,write and execute
# access group read,write,but can no execute
# access other user read,write,but can no execute
chmod myfile 775
chmod    # 更改文件或目錄訪問權限(change mode)
chown    # 更改指定的文件全部者爲指定的用戶或用戶組(change owner)
file    # 查看文件類型

 

命令查詢

whereis [COMMAND]                                          # 顯示shell命令所在的目錄位置
which [COMMAND_FILE]                                       # 搜索命令文件所在的目錄位置
man [COMMAND]                                              # manual 顯示該命令的詳細狀況
alias                                                      # 查看命令的別名
alias [COMMAND] = '[COMMAND_ALIAS]'                        # 修改命令的別名
alias [COMMAND_ALIAS] = '[ORIGINAL_COMMAND]'               # 修改別名爲原命令
unalias [COMMAND_ALIAS]                                    # 刪除別名
history [OP_ARG] [HISTORY_COMMAND_FILE]                    # 修改歷史命令
    -c # clear 清空歷史命令
    -w # write 把緩存中的歷史命令寫入歷史命令
       # 保存文件~/.bash_history

 

查找命令

grep [OP_ARG]                                      # global regular expression print 正則表達式搜索

 

解壓壓縮命令

tar [OPTION] [COPRESSED_FILE]                              # 解壓壓縮文件
    -X  # 解壓釋放目標文件
    -z  # 壓縮目標文件

 

系統管理命令

網絡管理命令

ping [HOST]    # 向目標主機發送回應請求
ifconfig    # 基本的網絡配置命令
route    # 顯示或配置路由表信息
netstat    # 顯示各類網絡相關信息
service

 

系統資源管理命令

ps    # 靜態顯示當前的進程信息
top    # 動態顯示全部進程
free    # 顯示內存空間的使用狀況
job

磁盤信息查看命令

df    # 顯示剩餘磁盤空間
fdisk    # 顯示磁盤分區及磁盤信息命令

系統命令

clear    # 清除屏幕內容
shutdown [OP] [TIME]    # 執行關機或重啓命令
    -&  # 在後臺執行
    -c  # cancel 取消上一次shutdown命令
    -h  # 關閉Linux系統
    -r  # reboot 重啓Linux系統
whoami    # 查看當前用戶
user    # 查看全部用戶
date    # 顯示系統時間
cal    # 顯示系統日期
reboot    # 重啓Linux系統
logout    # 登出當前用戶
mount    # 掛載命令
pstree    # 樹狀顯示系統進程(process tree)
set    # 顯示系統中已經存在的shell變量
env    # 顯示系統中已經存在的shell環境變量
source    # 保存並令配置文件生效

用戶與用戶組管理

sudo [CMD]   # 臨時提高權限爲超級用戶命令(super user do)
su    # 更改登陸用戶
who    # 顯示登陸用戶的信息 
useradd    # 建立新用戶帳號
userdel [OP] [USER_NAME]   # 刪除用戶登陸帳號以及相關的信息
    -r  # 把用戶目錄中的內容一併刪除(remove)
passwd [OP] [USER_NAME]    # 設定或者更改用戶密碼
    -d  # 刪除密碼(delete)
    -s  # 列出密碼相關的信息
    -l  # 鎖定用戶的密碼(lock)
    -u  # 解鎖被鎖住的密碼(unlock)
groupadd [OP] [GROUP_NAME]    # 建立新用戶組
    -g  # 制定用戶組標識(group id)
    -o  # 重複使用用戶組標識
    -r  # 建立系統組
    -f  # 強制建立已存在的用戶組
groupdel [GROUP_NAME]    # 刪除特定的用戶組

 

echo 命令裏的轉義字符和顏色

\e[1      開啓字符顏色

\e[0m   關閉字符顏色

31m

32m

33m

例子:

echo -e "\e[1;33mHello Linux!\e[0m"

輸出:

Hello Linux!

輸出重定向

單種命令輸出

[COMMAND] > [F]                                           # 把命令的正確輸出,以覆蓋形式寫入到文件
[COMMAND] >> [F]                                          # 把命令的正確輸出,以追加形式寫入到文件
[COMMAND] 2> [F]                                          # 把命令的錯誤輸出,已覆蓋形式寫入到文件
[COMMAND] 2>> [F]                                         # 把命令的錯誤輸出,以追加形式寫入到文件

雙重命令輸出

[COMMAND] &> [F]
[COMMAND] &>> [F]
[COMMAND] >> [CORRECT_FILE] 2>> [ERROR_FILE]

管道符

[COMMAND_1] ; [COMMAND_2]                                # 按順序執行多個命令
[COMMAND_1] && [COMMAND_2]                               # 邏輯與
                                                         # 當命令1正確執行,命令2纔會執行
                                                         # 當命令1執行不正確,命令2不執行
[COMMAND_1] || [COMMAND_2]                               # 邏輯或
                                                         # 當命令1正確執行,命令2不執行
                                                         # 當命令1執行不正確,命令2執行

管道符

[COMMAND|_1] | [COMMAND_2]                        # 把命令1的正確輸出做爲命令2的操做對象執行

通配符

?        匹配一個任意 字符        
*       
匹配前置的字符串
[]       匹配[]裏的字符,只能匹配一個字符
[ - ]   匹配[]裏範圍內的字符,只能匹配一個字符
[^]    匹配[]裏非範圍內的字符,只能匹配一個字符
' '      規定' '裏面的內容爲字符串
" "
``
$( )
#
$
\

 

經常使用快捷鍵

Ctrl + c    強制終止當前命令

Ctrl + l    清除屏幕內容

Ctrl + a    光標移動到命令行首

Ctrl + e    光標移動到命令行尾

Ctrl + u    刪除行首到當前光標位置之間的內容

Ctrl + z    把命令放入後臺

Ctrl + r    在歷史命令中搜索

Ctrl + d   退出當前終端命令行式的其餘語言進程

Tab          自動補全命令

 

參考資料

Linux Bash編程與腳本應用實戰

相關文章
相關標籤/搜索