linux命令學習筆記
前言
之前租用了騰訊雲的服務器,用來學習web安全,因為要搭建的是lamp環境 所以linux的基本操作必須要會,今天趁著在linux中搭建網站,學了一些基本操作,不寫下來,總覺得不熟悉。
正文
1.cp命令
Linux cp命令主要用於復制文件或目錄。
語法:cp [options] source dest
參數說明:
-a:此選項通常在復制目錄時使用,它保留鏈接、文件屬性,並復制目錄下的所有內容。其作用等於dpR參數組合。
-d:復制時保留鏈接。這裏所說的鏈接相當於Windows系統中的快捷方式。
-f:覆蓋已經存在的目標文件而不給出提示。
-i:與-f選項相反,在覆蓋目標文件之前給出提示,要求用戶確認是否覆蓋,回答"y"時目標文件將被覆蓋。
-p:除復制文件的內容外,還把修改時間和訪問權限也復制到新文件中。
-r:若給出的源文件是一個目錄文件,此時將復制該目錄下所有的子目錄和文件。
-l:不復制文件,只是生成鏈接文件。
實例
使用指令"cp"將當前目錄"test/"下的所有文件復制到新目錄"newtest"下,輸入如下命令:
$ cp –r test/ newtest
更詳細的cp命令請查看:https://www.cnblogs.com/gongxq/p/5802718.html
2.mv命令
Linux mv命令用來為文件或目錄改名、或將文件或目錄移入其它位置。
語法:mv [options] source dest
參數說明:
-i: 若指定目錄已有同名文件,則先詢問是否覆蓋舊文件;
-f: 在mv操作要覆蓋某已有的目標文件時不給任何指示;
mv參數設置與運行結果:
命令格式 運行結果
mv 文件名 文件名 將源文件名改為目標文件名
mv 文件名 目錄名 將文件移動到目標目錄
mv 目錄名 目錄名 目標目錄已存在,將源目錄
移動到目標目錄;目標
目錄不存在則改名
mv 目錄名 文件名 出錯
查看更詳細的mv操作請訪問:https://www.cnblogs.com/piaozhe116/p/6084214.html
3.Linux命令行下如何終止當前程序
快捷鍵:
Ctrl+c
在命令行下起著終止當前執行程序的作用,
Ctrl+d
相當於exit命令,退出當前shell
Ctrl+s
掛起當前shell(保護作用很明顯哦)
4.
Ctrl+q
解凍掛起的shell再不行就重新連接打開一個終端,reboot linux 或 kill 相關進程。
5.mkdir命令
1.mkdir命令使用權限
所有用戶都可以在終端使用mkdir命令在擁有權限的文件夾創建目錄
2.mkdir命令使用格式
mkdir [選項] DirName
3.mkdir命令功能
通過 mkdir 命令可以實現在指定位置創建以 DirName(指定的文件名)命名的目錄。要創建目錄的用戶必須對所創建目錄的父目錄具有寫權限(了解Linux文件-文件夾權 限請點擊這裏)。並且,所創建的文件夾(目錄)不能與其父目錄(即父文件夾)中的文件名重名,即同一個目錄下不能有同名的(區分大小寫)。
4.mkdir命令選項說明
命令中的[選項]一般有以下兩種:
-m 用於對新建目錄設置存取權限,也可以用 chmod 命令進行設置。
-p 需要時創建上層文件夾(或目錄),如果文件夾(或目錄)已經存在,則不視為錯誤。
5.mkdir命令使用舉例
例一:在桌面下面創建以“demo”命名的文件夾。
使用以下命令即可。
mkdir 桌面/demo
例二:在桌面下面創建以“demo”命名的文件夾,並且給文件夾賦權限,權限為123。
mkdir 123 桌面/demo
6.rm命令
一、rm命令使用權限
所有用戶都可以在終端使用 rm命令刪除目錄。
二、rm命令使用格式
格式:rm [選項] DirName
三、rm命令功能
刪除檔案及目錄。
四、rm命令選項說明
命令中的[選項]一般有以下幾種:
-i 刪除前逐一詢問確認。
-f 即使原檔案屬性設為唯讀,亦直接刪除,無需逐一確認。
-r 將目錄及以下之檔案亦逐一刪除,遞歸所有的子目錄,逐一詢問。
五、rm命令使用舉例
例一:刪除所有C語言程序文檔;刪除前逐一詢問確認。
rm -i *.c
例二:將 Finished 子目錄及子目錄中所有檔案刪除。
rm -r Finished
rm -f abc.txt的意思是說強制刪除文件。如果文件不存在,也不要提示。這是因為如果直接使用rm abc.txt那麽如果文件不存在,rm 會提示你。這在某些情況下,比如我們寫一些小腳本,可能不需要他這樣做。 rm -r abc 的意思是說遞歸所有的子目錄。其中要求abc是一個目錄名。這條rm運行後,abc目錄下的所有子目錄裏的東西也會一同被刪除。通常我們在刪除一個目錄時會使用rm -rf abc這樣的形式,這就是說明刪除目錄abc,同時要求命令不要產生任何提示。
註:在linux沒有回收站,在試用rm命令的時候,一定要小心些,刪除之後就無法再恢復了。
源自此博客:https://blog.csdn.net/linjpg/article/details/77854671
7.vi命令
創建文件【vi】
一、進入vi的命令
vi filename :打開或新建文件,並將光標置於第一行首
vi +n filename :打開文件,並將光標置於第n行首
vi + filename :打開文件,並將光標置於最後一行首
vi +/pattern filename:打開文件,並將光標置於第一個與pattern匹配的串處
vi -r filename :在上次正用vi編輯時發生系統崩潰,恢復filename
vi filename....filename :打開多個文件,依次進行編輯
二、移動光標類命令
h :光標左移一個字符
l :光標右移一個字符
space:光標右移一個字符
Backspace:光標左移一個字符
k或Ctrl+p:光標上移一行
j或Ctrl+n :光標下移一行
Enter :光標下移一行
w或W :光標右移一個字至字首
b或B :光標左移一個字至字首
e或E :光標右移一個字至字尾
) :光標移至句尾
( :光標移至句首
}:光標移至段落開頭
{:光標移至段落結尾
nG:光標移至第n行首
n+:光標下移n行
n-:光標上移n行
n$:光標移至第n行尾
H :光標移至屏幕頂行
M :光標移至屏幕中間行
L :光標移至屏幕最後行
0:(註意是數字零)光標移至當前行首
$:光標移至當前行尾
三、屏幕翻滾類命令
Ctrl+u:向文件首翻半屏
Ctrl+d:向文件尾翻半屏
Ctrl+f:向文件尾翻一屏
Ctrl+b;向文件首翻一屏
nz:將第n行滾至屏幕頂部,不指定n時將當前行滾至屏幕頂部。
四、插入文本類命令
i :在光標前
I :在當前行首
a:光標後
A:在當前行尾
o:在當前行之下新開一行
O:在當前行之上新開一行
r:替換當前字符
R:替換當前字符及其後的字符,直至按ESC鍵
s:從當前光標位置處開始,以輸入的文本替代指定數目的字符
S:刪除指定數目的行,並以所輸入文本代替之
ncw或nCW:修改指定數目的字
nCC:修改指定數目的行
五、刪除命令
ndw或ndW:刪除光標處開始及其後的n-1個字
do:刪至行首
d$:刪至行尾
ndd:刪除當前行及其後n-1行
x或X:刪除一個字符,x刪除光標後的,而X刪除光標前的
Ctrl+u:刪除輸入方式下所輸入的文本
六、搜索及替換命令
/pattern:從光標開始處向文件尾搜索pattern
?pattern:從光標開始處向文件首搜索pattern
n:在同一方向重復上一次搜索命令
N:在反方向上重復上一次搜索命令
:s/p1/p2/g:將當前行中所有p1均用p2替代
:n1,n2s/p1/p2/g:將第n1至n2行中所有p1均用p2替代
:g/p1/s//p2/g:將文件中所有p1均用p2替換
七、vi命令使用舉例
例一:創建文件a.txt。
vi a.txt
Hello everyone!
:wq //在退出時,直接輸入:wq會發現退不出去,退出方法是:編輯完成後按ESC,然後輸入:q就是退出;還有:wq是保存後退出,加感嘆號是表示強制
8.vim 的使用
基本上 vi/vim 共分為三種模式,分別是命令模式(Command mode),輸入模式(Insert www.dfgj157.com mode)和底線命令模式(Last line mode)。 這三種模式的作用分別是:
命令模式:
用戶剛剛啟動 vi/vim,便進入了命令模式。
此狀態下敲擊鍵盤動作會被Vim識別為命令,而非輸入字符。比如我們此時按下i,並不會輸入一個字符,i被當作了一個命令。
以下是常用的幾個命令:
i 切換到輸入模式,以輸入字符。
x 刪除當前光標所在處的字符。
: 切換到底線命令模式,以在最底一行輸入命令。
若想要編輯文本:啟動Vim,進入了命令模式,按下i,切換到輸入模式。
命令模式只有一些最基本的命令,因此仍要依靠底線命令模式輸入更多命令。
輸入模式
在命令模式下按下i就進入了輸入模式。
在輸入模式中,可以使用以下按鍵:
字符按鍵以及Shift組合,輸入字符
ENTER,回車鍵,換行
BACK SPACE,退格鍵,刪除光標前一個字符
DEL,刪除鍵,刪除光標後一個字符
方向鍵,在文本中移動光標
HOME/END,移動光標到行首/行尾
Page Up/Page Down,上/下翻頁
Insert,切換光標為輸入/替換模式,光標將變成豎線/下劃線
ESC,退出輸入模式,切換到命令模式
底線命令模式:
在命令模式下按下:(英文冒號)就進入了底線命令模式。
底線命令模式可以輸入單個或多個字符的命令,可用的命令非常多。
在底線命令模式中,基本的命令有(已經省略了冒號)
vim編輯器幾種退出的形式
點擊Esc鍵退出編輯模式,進入命令模式,and than
:q —–) 退出 eq quit (正常退出,在沒有編輯的情況下)
:q! —-)不保存退出 eq quit!(在編輯出現錯誤的情況下)
:wq —–)寫入文件並退出 eq writequit
*:wq! —退出時寫入與否取決於文件的權限,有寫權限寫入並退出,沒有寫權限就強制退出
:x —-)等同於:wq,寫入與否取決於文件是否變動
:qa —-)退出全部 eq quitall
按ESC鍵可隨時退出底線命令模式。
9.source命令
Linux Source命令及腳本的執行方式解析
當我修改了/etc/profile文件,我想讓它立刻生效,而不用重新登錄;這時就想到用source命令,如:source /etc/profile
對source進行了學習
source命令:
source命令也稱為“點命令”,也就是一個點符號(.),是bash的內部命令。
功能:使Shell讀入指定的Shell程序文件並依次執行文件中的所有語句
source命令通常用於重新執行剛修改的初始化文件,使之立即生效,而不必註銷並重新登錄。
用法:
source filename 或 . filename
source命令(從 C Shell 而來)是bash shell的內置命令;點命令(.),就是個點符號(從Bourne Shell而來)是source的另一名稱。
10.tail命令
inux tail命令用途是依照要求將指定的文件的最後部分輸出到標準設備,通常是終端,通俗講來,就是把某個檔案文件的最後幾行顯示到終端上,假設該檔案有更新,tail會自己主動刷新,確保你看到最新的檔案內容。
一、tail命令語法
tail [ -f ] [ -c Number |www.272345.cn/ -n Number | www.thd540.com -m Number | -b Number | -k Number ] [ File ]
參數解釋:
-f 該參數用於監視File文件增長。
-c Number 從 Number 字節位置讀取指定文件
-n Number 從 Number 行位置讀取指定文件。
-m Number 從 www.leyou1178.cn Number 多字節字符位置讀取指定文件,比方你的文件假設包括中文字,假設指定-c參數,可能導致截斷,但使用-m則會避免該問題。
-b Number 從 Number 表示的512字節塊位置讀取指定文件。
-k Number 從 Number 表示的1KB塊位置讀取指定文件。
File 指定操作的目標文件名稱
上述命令中,都涉及到number,假設不指定,默認顯示10行。Number前面可使用正負號,表示該偏移從頂部還是從尾部開始計算。
tail可運行文件一般在/usr/bin/以下。
二、tail命令使用方法演示例子
1、tail -f filename
說明:監視filename文件的尾部內容(默認10行,相當於增加參數 -n 10),刷新顯示在屏幕上。退出,按下CTRL+C。
2、tail -n 20 filename
說明:顯示filename最後20行。
3、tail -r -n 10 filename
說明:逆序顯示filename最後10行。
11. curl 命令
cURL是一個利用URL語法在命令行下工作的文件傳輸工具,1997年首次發行。它支持文件上傳和下載,所以是綜合傳輸工具,但按傳統,習慣稱cURL為下載工具。
curl -V(大寫)查看curl的版本和該版本支持的協議,如下圖
curl的常見用法請查閱此博客:https://www.jb51.net/article/118402.htm
或者查看百度 https://baike.baidu.com/item/curl/10098606?fr=aladdin
12.pwd命令
pwd是Print Working Directory的縮寫,其功能是顯示當前所在工作目錄的全路徑。主要用在當不確定當前所在位置時,通過pwd來查看當前目錄的絕對路徑。
pwd命令語法
pwd [選項]
參數:
-L:--logical,顯示當前的路徑,有連接文件時,直接顯示連接文件的路徑,(不加參數時默認此方式),參考示例1。
-p:--physical,顯示當前的路徑,有連接文件時,不使用連接路徑,直接顯示連接文件所指向的文件,參考示例2。 當包含多層連接文件時,顯示連接文件最終指向的文件,參考示例3。
linux命令學習筆記