Linux命令的分類
Linux命令
用于實作某一類功能的指令或程式
命令的執行依賴于解釋器程式(例如:/bin/bash)
Linux命令的分類
內部命令:屬于Shell解釋器的一部分
外部命令:獨立于Shell解釋器之外的程式檔案
用命令type來區分命令是內部還是外部命令
例:type cd/type ping
Linux命令的通用命令格式
命令字 [選項] [引數]
選項及引數的含義
選項:用于調節命令的具體功能
以 “-”引導短格式選項(單個字符),例如“-l”
以“–”引導長格式選項(多個字符),例如“–color”
多個短格式選項可以寫在一起,只用一個“-”引導,例如“-al”
引數:命令操作的物件,如檔案、目錄名等
命令列編輯的幾個輔助操作
Tab鍵:自動補齊
反斜杠“\”:強制換行
快捷鍵 Ctrl+U:清空至行首
快捷鍵 Ctrl+K:清空至行尾
快捷鍵 Ctrl+L:清屏
快捷鍵 Ctrl+C:取消本次命令編輯
獲得命令幫助
內部命令help
查看Bash內部命令的幫助資訊
命令的“–help” 選項
適用于大多數外部命令
使用man命令閱讀手冊頁
使用“箭頭上”、“箭頭下”方向鍵滾動文本
使用Page Up和Page Down鍵翻頁
按Q或q鍵退出閱讀環境、按“/”鍵后查找內容
使用info命令閱讀資訊頁
檔案和目錄管理
目錄操作命令
pwd、cd、ls、mkdir、du
檔案操作命令
touch、file、cp、rm、mv、which、find、ln
檔案內容操作命令
cat、more、less
head、tail、wc、grep
歸檔及壓縮命令
gzip、bzip2、tar
目錄操作命令
pwd命令
用途:查看作業目錄(Print Working Directory)
cd命令
用途:切換作業目錄(Change Directory)
格式:cd [目錄位置]
cd 進入用戶的主目錄
cd ~ 進入用戶的主目錄
cd - 回傳進入此目錄之前所在的目錄
cd … 回傳上級目錄
cd …/… 回傳上兩級目錄
ls命令
用途:串列(List)顯示目錄內容
格式:ls [選項]… [目錄或檔案名]
常用命令選項
-l :以長格式顯示 (length 長度)
-a:顯示所有子目錄和檔案的資訊,包括隱藏檔案
-d:顯示目錄本身的屬性
-A:類似于“-a”,但不顯示“.”和“…”目錄的資訊
-h:以更易讀的位元組單位(K、M等)顯示資訊
-R:遞回顯示內容
–color:以顏色區分不同型別檔案
- 匹配任意字符
?匹配一個字符,在示例中出現了三個???說明要匹配的是三個字符,如果把示例中的三個問號減少一個,就查不到結果了,
-a 可以讓我們查看到隱藏檔案,那么創建隱藏檔案如何做呢?
我們創建一個檔案是: touch 檔案名
如果想將這個檔案創建成隱藏的檔案,我們就: touch .檔案名 在檔案名的前面加入“.”就可以了
alias 自定義的別名 = ‘被定義的命令’ alias lis = ‘ls’
mkdir命令
用途:創建新的目錄(Make Directory)
格式:mkdir [-p] [/路徑/]目錄名
du命令
用途:統計目錄及檔案的空間占用情況(estimate file space usage)
格式:du [選項]… [目錄或檔案名]
常用命令選項
-a:統計時包括所有的檔案,而不僅僅只統計目錄
-h:以更易讀的位元組單位(K、M等)顯示資訊
-s:只統計每個引數所占用空間總的大小
檔案操作命令
touch命令
用途:新建空檔案,或更新檔案時間標記
格式:touch 檔案名…
只占用inode節點,沒有占用空間
file命令
用途:查看檔案型別
格式: file 檔案名…
cp命令
用途:復制(Copy)檔案或目錄
格式:cp [選項]… 源檔案或目錄… 目標檔案或目錄
常用命令選項
-r:遞回復制整個目錄樹
-p:保持源檔案的屬性不變
-f:強制覆寫目標同名檔案或目錄
-i:需要覆寫檔案或目錄時進行提醒
-a: 將整個目錄遞回復制,并且將權限也復制過來
cp ~/.bashrc /tmp/bashrc 將主檔案夾下的.bashrc檔案復制到/tmp/bashrc中
cp -a /etc /tmp/test 將/etc下的全部檔案全部復制到/tmp/test下,這個時候會自動創建一個目錄test
rm命令
用途:洗掉(Remove)檔案或目錄
格式:rm [選項]… 檔案或目錄
常用命令選項
-f:強行洗掉檔案或目錄,不進行提醒
-i:洗掉檔案或目錄時提醒用戶確認
-r:遞回洗掉整個目錄樹
將/tmp 下的bashrc洗掉掉,并且詢問用戶是否洗掉掉, cd /tmp -----> rm -i bashrc
mv命令
用途:移動(Move)檔案或目錄
若如果目標位置與源位置相同,則相當于改名
格式:mv [選項]… 源檔案或目錄… 目標檔案或目錄
mv bashrc test就是將bashrc 移動到test 下
mv test test1 這是重命名
which命令
用途:查找Linux命令檔案并顯示所在的位置
搜索范圍由 PATH 環境變數指定
格式:which 命令或程式名
echo $PATH 輸出當前所有環境變數
find命令
用途:用于查找檔案或目錄
格式:find [查找范圍] [查找條件]
常用查找條件
-name:按檔案名稱查找
-size:按檔案大小查找
-user:按檔案屬主查找
-type:按檔案型別查找
一般正規檔案:f
設備檔案:b(塊設備檔案),c(字符設備檔案)
目錄:d
連接檔案:l
socket:s
FIFO:p
權限: perm 最高權限:777
find . -type f -atime -7:查找七天之內的檔案
find . -type f -amin +7:查找超過7分鐘的檔案
find / -type f -perm 777:權限查找
find . -type f -name “aaa” ! -perm 777:(查找當前目錄下名字為aaa的權限不是最高的普通檔案)反向選擇
find $HOME/ . -name “.txt" -ok rm -rf {} ; 查找并洗掉普通用戶的宿主目錄下.txt結尾的所有檔案
find . -type f -user root -exec chown zz {} ; 把當前目錄下的普通檔案的屬主改成 zz
find . -type f -name ".txt” -exec cat {} ; > zz.txt 把所有.txt的檔案合并到zz.txt
給最高權限:chmod 777 + 檔案或目錄
ln命令
用途:ln命令用來為檔案創件連接,連接型別分為硬連接和符號連接兩種,默認的連接型別是硬連接,如果要創建符號連接必須使用"-s"選項,
格式:ln [-s] 源檔案或目錄… 鏈接檔案或目標目錄
常用命令選項
-s:建立符號鏈接檔案(省略此項則建立硬鏈接)
關于鏈接檔案
符號鏈接:指向原始檔案所在的路徑,又稱為軟鏈接
硬鏈接:指向原始檔案對應的資料存盤位置
不能為目錄建立硬鏈接檔案
硬鏈接與原始檔案必須位于同一磁區(檔案系統)中
軟連接檔案被洗掉后,鏈接失效
硬鏈接檔案被洗掉后,鏈接不失效
內部命令、外部命令有什么區別?
內部命令為bash程式內置,無需對應的外部程式檔案,執行速度更快
Linux命令列的通用格式是什么?
命令字 選項 引數
絕對路徑、相對路徑的含義分別是什么?
絕對路徑即從根目錄”/“開始表示的目錄或檔案位置,相對路徑是相對于當前目錄或用戶宿主目錄的其他檔案或目錄的路徑
cat命令
cat 本質可以讀取二進制檔案,
cat -n 輸出行號 等價于nl命令
可以把光碟做成iso鏡像,也可以把系統光碟做成U盤啟動盤
用途:顯示出檔案的全部內容
more命令
用途:全屏方式分頁顯示檔案內容
互動操作方法:
按Enter鍵向下逐行滾動
按空格鍵向下翻一屏、按b鍵向上翻一屏
按q鍵退出
less命令
用途:與more命令相同,但擴展功能更多
互動操作方法:
與more命令基本類似,但個別操作會有些出入
簡單演示cat、more、less命令的用法
more命令結合管道操作使用時(例如:ls -R /etc | more)無法向上翻頁,但less命令可以
在分頁閱讀界面中,到檔案末尾時more命令會自動退出,less命令不會
more和less都可以用于分頁查看文本內容,具體使用哪一個看用戶習慣
head命令
用途:查看檔案開頭的一部分內容(默認為10行)
格式:head -n 檔案名
tail命令
用途:查看檔案結尾的少部分內容(默認為10行)
格式:tail -n 檔案名
tail –f or tailf 檔案名 實時監控
tail命令結合“-f”選項使用時,可以用于跟蹤日志檔案末尾的內容變化,實時顯示更新的日志內容
wc命令
用途:統計檔案中的單詞數量(Word Count)等資訊
格式:wc [選項]… 目標檔案…
常用命令選項
-l:統計行數 line
-w:統計單詞個數 word
-c:統計位元組數
wc命令未指定選項時,默認相當于”-lwc“,會同時統計行數、單詞數、位元組數(含空格、回車等符號)
grep命令
用途:在檔案中查找并顯示包含指定字串的行
格式:grep [選項]… 查找條件 目標檔案
常用命令選項
-i:查找時忽略大小寫
-v:反轉查找,輸出與查找條件不相符的行
查找條件設定
要查找的字串以雙引號括起來
“^……”表示以……開頭,“……KaTeX parse error: Expected group after '^' at position 11: ”表示以……結尾 “^?”表示空行
grep -c:統計行數
grep -o:統計字母
netstat -anpt 差看服務資訊(狀態)
管道和重定向
1.定義:
管道命令符“|”的作用是將前一個命令的標準輸出作為后一個命令的標準輸入,格式為“命令A | 命令B”
利用Linux所提供的管道符“|”將兩個命令隔開,管道符左邊命令的輸出就會作為管道符右邊命令的輸入,連續使用管道意味著第一個命令的輸出會作為第二個命令的輸入,第二個命令的輸出又會作為第三個命令的輸入,依此類推,
注意:
1、管道命令只能處理前一個命令的標準輸出,而不能處理標準錯誤;
2、管道命令右邊命令必須能夠接收標準輸入,
test 01:在當前目錄下找到檔案名為test.txt 所有結果(編號顯示)
find . -name test.txt | cat -n
test 02:用翻頁的形式查看/etc下有哪些目錄和檔案
ls -l /etc/ | more
test 03:獲取到/etc/passwd檔案中所有以sshd開頭的檔案里的內容
cat /etc/passwd | grep ‘^sshd’
test 04:獲取到install.log檔案中所有以noarch結尾的檔案里的內容
cat install.log | grep ‘noarch$’
test 05:顯示/etc目錄下所有以pa開頭的檔案,并統計其個數
ls -ld /etc/pa* | wc -l
test 06:統計/usr/bin目錄下的檔案個數
ls /usr/bin | wc -l
類別 運算子 說明
輸入重定向 < 輸入重定向是將命令中接收輸入的途徑由默認的鍵盤更改(重定向)為指定的檔案
輸出重定向 > 將命令的執行結果重定向輸出到指定的檔案中,命令進行輸出重定向后執行結果將不顯示在螢屏上
將命令執行的結果重定向并追加到指定檔案的末尾保存
錯誤重定向 2> 清空指定檔案的內容,并保存標準錯誤輸出的內容到指定檔案中
2>> 向指定檔案中追加命令的錯誤輸出,而不覆寫檔案中的原有內容
輸出與錯誤組合重定向 &> 將標準輸出與錯誤輸出的內容全部重定向到指定檔案
將顯示的結果輸出到 list.txt 檔案中,若該檔案以存在則予以取代!
ls /etc > list.txt
將顯示的結果累加到 list.txt 檔案中,該檔案為累加的,舊資料保留!
ls /etc/yum.repos.d >> list.txt
將顯示的資料,正確的輸出到 list.txt 錯誤的資料輸出到 list.err
ls -al 1> list.txt 2> list.err
將顯示的資料,正確的輸出到 list.txt 錯誤的資料則予以丟棄! /dev/null ,可以說成是黑洞裝置,為空,即不保存,
ls -al 1> list.txt 2> /dev/null
將顯示的資料,不論正確或錯誤均輸出到 list.txt 當中!錯誤與正確檔案輸出到同一個檔案中,則必須以上面的方法來寫!不能寫成其它格式!
ls -al 1> list.txt 2> &1
使用標準輸入,在a.txt檔案中寫入 “hello world”
輸出:echo “hello world” > a.txt
<輸入
將命令的man手冊頁資訊保存到文本檔案
man ls | col -b > lshelp.txt
col命令用于過濾文本中的一些特殊控制字符
管道:將前面命令的螢屏輸出結果作為后面命令的處理物件(輸入)
重定向輸出:將正常輸出結果保存到“>”號后邊指定的檔案中
歸檔及壓縮命令
gzip命令—壓縮原理 2
壓縮不能壓縮過小的檔案,越壓越大
gzip 壓縮可以說是最為廣泛的壓縮命令了,可以新建為*.gz的檔案名,
語法格式:
gzip [-cdtv#] 檔案名
引數:
-c 將壓縮的資料輸出到螢屏,可通過資料流重定向來處理
-d 解壓縮的引數d
-t 可以用來檢驗一個壓縮檔案的一致性,看看檔案有無錯誤
-v 可以顯示出原檔案/壓縮檔案的壓縮比等資訊
-# 壓縮等級,-1 最快,-9最佳,最好的壓縮默認是-6
bzip2
格式如下:bzip2 [-cdkzv#] 檔案名
引數:
-c 將壓縮程序中產生的資料輸出到螢屏上 stuout
-d 解壓縮的引數
-k 保留原檔案,而不會洗掉源檔案 keep
-z force compression 強制壓縮
-v 顯示出源檔案、壓縮檔案的壓縮比例等資訊verbose
-# 是計算壓縮比的引數,-1最快,-9最佳
bzip2 -z man.config
bzip2 -d man.config.bz2
tar命令
用途:制作歸檔檔案、釋放歸檔檔案
格式:tar [選項]… 歸檔檔案名 源檔案或目錄
tar [選項]… 歸檔檔案名 [-C 目標目錄]
常用命令選項
-c:創建 .tar 格式的包檔案
-x:解開.tar格式的包檔案
-v:輸出詳細資訊
-f:表示使用歸檔檔案,在 f 之后要立即接歸檔名喔!不要再加引數.
例如使用『 tar -zcvfP tfile sfile 』就是錯誤的寫法,要寫成『 tar -zcvPf tfile sfile 』才對喔!
-p:打包時保留原始檔案及目錄的權限
-t:表查看包內的檔案列
-C:解包時指定釋放的目標檔案夾
-z:呼叫gzip程式進行壓碩訓解壓
-j:呼叫bzip2程式進行壓碩訓解壓
-J:呼叫xz程式進行壓碩訓解壓
歸檔練習
test01:將檔案a.txt歸檔,歸檔檔案名為a.txt.tar
tar cf a.txt.tar a.txt
test02:將上題中的a.txt.tar進行解包
tar xf a.txt.tar
test03:再次對a.txt 進行歸檔,并且輸出引數(提示用戶是否成功)
tar cvf a.txt.tar
test04:將b.txt和a.txt同時放在歸檔檔案中,查看歸檔檔案中是否有a.txt和b.txt檔案
tar cf a.txt.tar b.txt a.txt
tar tf a.txt.tar
test05:查看a.txt.tar中的檔案有那些
tar tf a.txt.tar
歸檔并壓縮練習
test01:將檔案a.txt歸檔并壓縮成gzip的格式
tar zcf a.txt.tar.gz
test02:將檔案b.txt歸檔并壓縮成bzip2的格式
tar jcf a.txt.tar.bz2
test03:將檔案a.txt.tar.gz檔案解壓到指定的demo目錄下
tar zxf a.txt.tar.gz -C /demo
test04:將檔案b.txt.tar.bz2檔案解壓到當前目錄下
tar jxf b.txt.tar.bz2 -C .
文本編輯器概述
文本編輯器的作用
創建或修改文本檔案
維護Linux系統中的各種組態檔
Linux中最常用的文本編輯器
vi:類Unix系統中默認的文本編輯器
vim:vi編輯器的增強版本,習慣上也稱為vi
vim和vi的區別
vim是中文的,vi是英文的
vim 是具備編譯能力的,但是vi并不具備
可以執行一些腳本檔案
vim 可以跨平臺,vi不可以
windows ,linux ,mac
編輯器的作業模式
命令模式、輸入模式、末行模式
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/234229.html
標籤:其他
上一篇:unexpected EOF, expected 455433 more bytes. The file might be corrupted.解決方案
下一篇:機器學習基礎概念
