由於工作需要,接觸到macos
系統,想學習到shell
的指令碼程式設計,故閱讀了《linux命令列與shell指令碼程式設計大全》
,也借鑑到了實驗樓的linux
相關基礎知識,以下為讀書筆記之linux命令列
篇。
終端根目錄為/
,剛開始進入終端時,預設當前目錄為使用者目錄,即/home/user
,在終端中以~
符號代替,當然也可以用pwd
命令列印當前目錄。根目錄下有很多預設的子目錄:
cd 目錄名
:用於切換目錄
目錄名的書寫格式分為兩種,以/
開頭的是絕對路徑,非/
開頭的是相對路徑,表示以當前目錄(用.
表示,父目錄用..
表示)為起點。
ls
:展示當前目錄下的子目錄和檔案列表 引數
功能-a
顯示以點號開頭的隱藏檔案
-f
區分展示目錄和檔案,目錄後帶/
-i
顯示目錄和檔案的inode
編號,標識檔案的唯一數字
-l
顯示目錄或檔案詳盡資訊,包括檔案型別、許可權等
-r
遞迴顯示所有檔案,可用ctrl+z
停止遞迴,然後kill
殺死遞迴程序
命令引數可以寫到一起,比如ls -al
;
除了可以用命令引數,還可以檢視特定檔案或用正規表示式過濾,只需在引數後加上檔名。
補充說明:
file 檔案或目錄名
:檢視檔案型別
cat 檔名
:顯示檔案所有內容 引數
功能-b
只給有文字的行加上行號
-n
給所有的行加上行號
-t
隱藏製表符
more 檔名
:分頁顯示檔案內容且只能向前瀏覽,enter
向下滾動一行,space
向下滾動一頁,q
退出
less 檔名
:分頁顯示檔案內容,pgup
向上翻頁,pgdn
向下翻頁,q
退出
tail/head 檔名
:預設顯示檔案末尾/開頭10行,可以使用-數字
改變顯示行數
sort 檔名
:排序資料
預設狀態下執行標準的字元排序,引數-n
按數值大小排序。按分隔符區分的資料進行排序的方法是sort -t '分隔符' -k 第幾個位置的資料 引數 檔名
,其中位置從1開始計數。
grep 正規表示式 檔名
:搜尋資料 引數
功能-c
顯示一共匹配到資料的行數
-n
顯示匹配到資料所在的行
-e
指定多個匹配模式
終端中可以通過輸入如zsh
、bash
的命令在父shell
的基礎上建立子shell
,可以和程序列表聯合使用。通過分號可以依次執行一系列命令,當在這一系列命令上加()
時命令列表就成為了程序列表,即自動建立出乙個子shell
去執行命令列表。
通過在程序列表或睡眠程序sleep 秒數
之後加&
可以將其置於後台執行,在後台執行的命令可以通過jobs -l
檢視。如果程序列表只包含乙個命令,那麼只會建立乙個額外的程序,否則為兩個。
命令分為內建命令和外部命令。區別是是否需要子程序執行命令,通過type -a 命令名稱
可以檢視命令的型別,而which 命令名稱
只顯示外部命令。
命令歷史記錄儲存在.bash_history
中,只有退出shell
時才會將歷史命令寫入到該檔案中。通過history
可以檢視自開啟終端以來的歷史命令,然後利用!命令編號
可以重新執行該命令。
可以通過alias 別名='命令(可以帶引數)'
為命令設定別名,通過alias -p
檢視當前可用別名。需要注意的是本次設定的別名在別的shell
中不起作用,需要更改環境變數。
命令作用
dd
刪除整行,前面加數字n
表示刪除n
行,刪除後用p
進行貼上
g
游標移動到最後一行,前面加數字n
表示移動到第n
行
gg
游標移動到第一行
w/b
游標移動到下乙個/前乙個單詞的開頭
home
游標移動到當前行行首
end
游標移動到當前行行尾
yy
複製整行,前面加數字n
表示複製n
行,複製後用p
進行貼上
>>
向右進行縮排
/或?字串
向下/上進行字串查詢,n/n
查詢下/上乙個內容
u
撤銷一次操作
命令作用
set shiftwidth?
獲取縮排值,通過=
以字元為單位進行設定
q
退出
wq
儲存並退出結語
目前只記錄一些常用的命令,如果在工作過程中發現其它好用的命令會及時進行更新~
Linux命令列基礎 常用的命令列
符號 符號含義 使用者目錄 也稱作家目錄 根路徑,即整個系統 所在當前目錄 當前目錄的上一級目錄 提示可以輸入命令列了 回車 carriage return 執行輸入的命令列 絕對路徑 開頭的路徑就是絕對路徑,不是這種開頭的就是相對路徑。命令列命令列的英文全寫 中文含義 pwdprint worki...
Linux命令列svn命令
1 linux命令列下將檔案checkout到本地目錄 svn checkout path path是伺服器上的目錄 例如 svn checkout svn 如果第一次使用svn,要使用 使用者名稱 密碼 svn checkout svn user password 簡寫 svn co 2 linu...
Linux命令列與命令
linux的命令是很重要的工具,也往往是初學者最大的瓶頸。有朋友用了很長時間的linux圖形介面,基本不使用命令列輸入命令執行,所以裝的linux最終成了擺設。這裡總結一些命令列下常使用的命令,希望能有用。什麼是命令 我們通常所說的linux命令列是執行在終端 terminal 的shell 閱讀l...