Ctrl+Alt+T
: 打開終端Ctrl+D
: 鍵盤輸入結束或退出終端Ctrl+S
: 暫定當前程序,暫停後按下任意鍵恢復運行Ctrl+C
: 中斷程序運行Ctrl+Z
: 將當前程序放到後臺運行,恢復到前臺爲命令fgCtrl+A
: 將光標移至輸入行頭,至關於Home
鍵Ctrl+E
: 將光標移至輸入行末,至關於End
鍵Ctrl+K
: 刪除從光標所在位置到行末Ctrl+Shift+T
: 新建標籤頁Alt+數字N
: 終端中切換到第N個標籤頁Alt+Backspace
: 向前刪除一個單詞Tab
: 終端中命令補全,當輸入某個命令的開頭的一部分後,按下Tab鍵就能夠獲得提示或者幫助完成上下鍵盤
: 切換命令歷史,剛輸入一個很長的命令,按上
鍵就能夠恢復Shift+PgUp
: 將終端顯示向上滾動Shift+PgDn
: 將終端顯示向下滾動command [options] [arguments] []表示是可選的
,即組成結構爲:命令 [選項] [參數]
man命令
是Linux下的幫助指令,經過man指令能夠查看Linux中的指令幫助、配置文件幫助和編程幫助等信息。-a
:在全部的man幫助手冊中搜索-k
:根據關鍵字搜索聯機幫助,是一種模糊搜索-f
:關鍵字精確搜索,等價於whatis指令,顯示給定關鍵字的簡短描述信息-P
:指定內容時使用分頁程序-M
:指定man手冊搜索的路徑數字
:指定從哪本man手冊中搜索幫助關鍵字
:指定要搜索幫助的關鍵字man命令
幾乎是萬能的,但它卻不是最高效的。因爲它給出的幫助信息很長,在短期內很差理解,因此在這種狀況下,用cheat命令
更方便,cheat命令
簡單來講,就是告訴你一個命令如何使用。它沒有提供其餘額外多餘的信息,只經過使用實例告訴你一個命令如何使用。cheat命令
,你們能夠參照婁老師提供的文章進行安裝配置。find命令
用來在指定目錄下查找文件。任何位於參數以前的字符串都將被視爲欲查找的目錄名。若是使用該命令時,不設置任何參數,則find命令
將在當前目錄下查找子目錄與文件。而且將查找到的子目錄和文件所有進行顯示。find pathname -options [-print -exec -ok ...]
pathname
:find命令所查找的目錄路徑。例如用.來表示當前目錄,用/來表示系統根目錄print
:find命令將匹配的文件輸出到標準輸出exec
:find命令對匹配的文件執行該參數所給出的shell命令,相應命令的形式爲'command' { } ;,注意{ }和;之間的空格ok
:和-exec
的做用相同,只不過以一種更爲安全的模式來執行該參數所給出的shell命令,在執行每個命令以前,都會給出提示,讓用戶來肯定是否執行-name
:按照文件名查找文件-perm
:按照文件權限來查找文件mtime -n +n
:按照文件的更改時間來查找文件, - n表示文件更改時間距如今n天之內,+ n表示文件更改時間距如今n天之前-newer file1 ! file2
:查找更改時間比文件file1新但比文件file2舊的文件-type
:查找某一類型的文件,諸如:b - 塊設備文件,d - 目錄,c - 字符設備文件,p - 管道文件,l - 符號連接文件,f - 普通文件-size n
:[c] 查找文件長度爲n塊的文件,帶有c時表示文件長度以字節計-depth
:在查找文件時,首先查找當前目錄中的文件,而後再在其子目錄中查找locate命令
實際上是find -name
的另外一種寫法,可是要比後者快得多,緣由在於它不搜索具體目錄,而是搜索一個數據庫(/var/lib/locatedb),這個數據庫中含有本地全部文件信息。Linux系統自動建立這個數據庫,而且天天自動更新一次,因此使用locate命令查不到最新變更過的文件。爲了不這種狀況,能夠在使用locate以前,先使用updatedb命令,手動更新數據庫。locate [選擇參數] [樣式]
-e
:將排除在尋找的範圍以外-1
:若是是1則啓動安全模式,在安全模式下,使用者不會看到權限沒法看到的檔案。這會使速度減慢,由於 locate
必須至實際的檔案系統中取得檔案的權限資料-f
:將特定的檔案系統排除在外,例如咱們沒有到必要把proc
檔案系統中的檔案放在資料庫中-q
:安靜模式,不會顯示任何錯誤訊息-n
:至多顯示 n個輸出-r
:使用正規運算式 作尋找的條件-o
:指定資料庫存的名稱-d
:指定資料庫的路徑-h
:顯示輔助訊息-V
:顯示程式的版本訊息grep命令
是一種強大的文本搜索工具,它能使用正則表達式搜索文本,並把匹配的行打印出來。grep
全稱是Global Regular Expression Print
,表示全局正則表達式版本,它的使用權限是全部用戶。grep [options]
-c
:只輸出匹配行的計數-I
:不區分大小寫(只適用於單字符)-h
:查詢多文件時不顯示文件名-l
:查詢多文件時只輸出包含匹配字符的文件名-n
:顯示匹配行及行號-s
:不顯示不存在或無匹配文本的錯誤信息-v
:顯示不包含匹配文本的全部行\
:忽略正則表達式中特殊字符的原有含義^
:匹配正則表達式的開始行$
:匹配正則表達式的結束行\<
:從匹配正則表達式的行開始\>
:到匹配正則表達式的行結束[ ]
:單個字符,如[A]即A符合要求[ - ]
:範圍,如[A-Z],即A、B、C一直到Z都符合要求。
:全部的單個字符*
:有字符,長度能夠爲0whereis命令
是定位可執行文件、源代碼文件、幫助文件在文件系統中的位置。這些文件的屬性應屬於原始代碼,二進制文件,或是幫助文件。whereis
程序還具備搜索源代碼、指定備用搜索路徑和搜索不尋常項的能力。whereis命令
只能用於程序名的搜索,並且只搜索二進制文件(參數-b)、man說明文件(參數-m)和源代碼文件(參數-s)。若是省略參數,則返回全部信息。whereis [-bmsu] [BMS 目錄名 -f ] 文件名
-b
:定位可執行文件-m
:定位幫助文件-s
:定位源代碼文件-u
:搜索默認路徑下除可執行文件、源代碼文件、幫助文件之外的其它文件-B
:指定搜索可執行文件的路徑-M
:指定搜索幫助文件的路徑-S
:指定搜索源代碼文件的路徑date
的可執行文件、源代碼和man手冊的位置which指令
會在PATH變量指定的路徑中,搜索某個系統命令的位置,而且返回第一個搜索結果。which
是根據使用者所配置的PATH
變量內的目錄去搜尋可運行檔的,因此,不一樣的PATH
配置內容所找到的命令是不同的。which 可執行文件名稱
-n
:指定文件名長度,指定的長度必須大於或等於全部文件中最長的文件名-p
:與-n參數相同,但此處的包括了文件的路徑-w
:指定輸出時欄位的寬度-V
:顯示版本信息which
去找出which
,查找文件banner命令
能夠用於輸出圖形字符,能夠利用'-w'參數指定打印寬度sudo apt-get update``sudo apt-get install sysvbanner
進行安裝,安裝完成後輸入命令banner linux
,即可以輸出圖形化的字符LINUX
toilet命令
可以把文本顯示成標題欄,安裝方法與banner安裝過程相似,依然是用apt-get install
命令
html
還能夠利用它添加顏色
node
figlet命令
會用大寫方式把咱們輸入的字符串顯示在標題欄,顯示效果由ASCII字符組成使用who am i
指令查看用戶,使用sudo adduser
指令新建用戶,使用su -l
指令切換登陸用戶,Ctrl+D
退出當前用戶
linux
每次新建用戶若是不指定用戶組的話,默認會自動建立一個與用戶名相同的用戶組,默認狀況下在sudo用戶組裏的可使用sudo命令得到root權限
正則表達式
使用usermod
命令能夠爲用戶添加用戶組,一樣使用該命令你必需有root權限,你能夠直接使用root用戶爲其它用戶添加用戶組,或者用其它已經在sudo用戶組的用戶使用sudo命令獲取權限來執行該命令
shell
使用sudo deluser xxx --remove-home
刪除用戶數據庫
用ls -l
查看文件權限,文件類型:Linux中一切皆文件;文件權限:一個目錄要同時具備讀權限和執行權限才能夠打開,而一個目錄要有寫權限才容許在其中建立其它文件,這是由於目錄文件實際保存着該目錄裏面的文件的列表等信息;連接數:連接到該文件所在的 inode 結點的文件名數目;文件大小:以 inode 結點大小爲單位來表示的文件大小。ls 加上 -lh 參數來更直觀的查看文件的大小。
編程
ls -Al
查看某一個目錄的完整屬性,而不是顯示目錄裏面的文件屬性;使用ls -dl <目錄名>
顯示全部文件大小,並以普通人類能看懂的方式呈現;使用ls -AsSh
,其中小s爲顯示文件大小,大S爲按文件大小排序。變動文件全部者:
ubuntu
若是有一個本身的文件不想被其餘用戶讀、寫、執行,那麼就須要對文件的權限作修改,方法一:二進制數字表示,方法二:加減賦值操做,'g''o'還有'u',分別表示group,others,user,'+','-' 就分別表示增長和去掉相應的權限。vim
cd ..
指令返回上一級目錄,使用cd ~
或者cd /home/<你的用戶名>
進入home目錄,使用pwd
獲取當前路徑。以"home"目錄爲起點,分別以絕對路徑和相對路徑的方式進入/usr/local/bin
目錄:
安全
touch命令
建立空白文件,其主要是來更改已有文件的時間戳的(如最近訪問時間,最近修改時間),但其在不加任何參數的狀況下,只指定一個文件名,則能夠建立一個爲指定文件名的空白文件(不會覆蓋已有同名文件),也能夠同時指定該文件的時間戳。mkdir(make directories)命令
能夠建立一個空目錄,也可同時指定建立目錄的權限屬性,使用-p
參數,同時建立父目錄(若是不存在該父目錄)。cp命令
複製一個文件或目錄到指定目錄,若是直接使用cp命令
,複製一個目錄的話,會出現錯誤,要成功複製目錄須要加上-r
或者-R
參數,表示遞歸複製。rm命令
,刪除一個文件或目錄;若是想忽略提示,直接刪除文件,可使用-f
參數強制刪除;要刪除一個目錄,也須要加上-r
或-R
參數。mv命令
,移動文件(剪切),mv 源目錄文件 目的目錄
;文件重命名:mv 舊的文件名 新的文件名
;使用rename命令
能夠批量重命名。cat
,tac
和nl
命令查看文件:這兩個命令都是用來打印文件內容到標準輸出(終端),其中cat
爲正序顯示,tac
倒序顯示;使用more
和less
命令分頁查看文件;使用head
和tail
命令查看文件。召喚「眼睛」:
tmp
的變量:$ declare tmp,其實也能夠不用declare預聲明一個變量,直接即用即建立;使用=號賦值運算符爲變量tmp
賦值爲shiyanlou:$ tmp=shiyanlou
;讀取變量的值,使用echo命令和$符號($符號用於表示引用一個變量的值):$ echo $tmp
;關於變量名,並非任何形式的變量名都是可用的,變量名只能是英文字母,數字或者下劃線,且不能以數字做爲開頭。set
:顯示當前 Shell 全部環境變量,包括其內建環境變量(與 Shell 外觀等相關),用戶自定義變量及導出的環境變量;env
:顯示與當前用戶相關的環境變量,還可讓命令在指定環境中運行;export
:顯示從 Shell 中導出成環境變量的變量,也能經過它將自定義變量導出爲環境變量;使用vimdiff工具比較set
、env
、export
的差異:
unset命令
刪除一個環境變量。召喚「數字雨」:
使用zip打包文件夾:zip -r -q -o shiyanlou.zip /home/shiyanlou
、du -h shiyanlou.zip
、file shiyanlou.zip
。
zip -r -e -o shiyanlou_encryption.zip /home/shiyanlou
。使用unzip命令解壓縮zip文件:將shiyanlou.zip解壓到當前目錄unzip shiyanlou.zip
;使用安靜模式,將文件解壓到指定目錄:unzip -q shiyanlou.zip -d ziptest
。
使用df
指令查看磁盤的容量,1k-blocks表示以磁盤塊大小的方式顯示容量,後面爲相應的以塊大小表示的已用和可用容量,咱們可使用df -h
指令能更直觀的查看磁盤容量。
du
命令查看目錄的容量,加上-h
參數,以更易讀的方式展現,du(estimate file space usage)命令與df(report file system disk space usage)只用一字只差,首先就但願注意不要弄混淆了,能夠從man手冊中獲取命令的完整描述,記全稱就不會搞混了。dd命令
用於轉換和複製文件,不過它的複製不一樣於cp
,在 Linux 上,硬件的設備驅動(如硬盤)和特殊設備文件(如/dev/zero和/dev/random)都像普通文件同樣,只要在各自的驅動程序中實現了對應的功能,dd 也能夠讀取自和/或寫入到這些文件。這樣,dd也能夠用在備份硬件的引導扇區、獲取必定數量的隨機數據或者空數據等任務中。dd程序
也能夠在複製時處理數據,例如轉換字節序、或在ASCII與EBCDIC編碼間互換。dd的命令行語句與其餘的 Linux 程序不一樣,由於它的命令行選項格式爲選項=值,而不是更標準的--選項 值或-選項=值。dd默認從標準輸入中讀取,並寫入到標準輸出中,但能夠用選項if(input file,輸入文件)和of(output file,輸出文件)改變。
安裝cheat時報錯
緣由是由於權限不夠,在命令前加上sudo
即可成功解決。
問題:安裝DDD軟件時出現錯誤:沒法得到鎖 /var/lib/dpkg/lock - open (11: 資源臨時不可用)
解決:由於有另一個程序在運行,致使鎖不可用。緣由多是上次運行更新或安裝沒有正常完成,解決辦法就是殺死此進程,輸入命令sudo rm /var/cache/apt/archives/lock
、sudo rm /var/lib/dpkg/lock
剛剛開始接觸Linux,感受上手起來仍是比較快,主要是要熟練掌握那幾個核心的Linux命令,這樣當咱們遇到一條新命令的時候,能夠經過查找它的幫助文檔來學習使用。另外,雖然Linux桌面應用發展很快,可是命令在Linux中依然有很強的生命力。Linux是一個命令行組成的操做系統,精髓在命令行,不管圖形界面發展到什麼水平這個原理是不會變的,學習如何在安全的環境中執行系統命令,包括有關文件、目錄、文件系統、進程等概念,如何使用相應的命令對文件、目錄、進程等進行管理,瞭解遇到問題時,如何找到幫助信息等,這些對於咱們深刻去理解Linux來講,都有着非同尋常的意義。學好Linux不是一件一蹴而就的事,我相信只要多動手,就必定會有收穫。
代碼行數(新增/累積) | 博客量(新增/累積) | 學習時間(新增/累積) | 重要成長 | |
---|---|---|---|---|
目標 | 5000行 | 30篇 | 400小時 | |
第一週 | 0/0 | 1/2 | 25/45 | 學習了幾個Linux核心命令 |