【Linux】必會! 常用又簡單的10個命令
目錄
一、cp 複製檔案或目錄
把一個、或多個原始檔、或源目錄複製到指定的檔案或目錄中
1、語法:cp [options] source dest
2、常用引數說明:
-f:覆蓋已經存在的目標檔案而不給出提示。
-i:與-f 選項相反,在覆蓋目標檔案之前給出提示,要求使用者確認是否覆蓋,回答"y"時目標檔案將被覆蓋。
-r,-R:若給出的原始檔是一個目錄檔案,此時將複製該目錄下所有的子目錄和檔案。
3、例項
(1)檔案a.txt------->b.txt(不存在的):
cp a.txt b.txt
結果是新建b.txt檔案,並把a.txt的內容複製到b.txt中。
(2)檔案a.txt------->b.txt(存在的):
cp a.txt b.txt
結果是用a.txt的內容覆蓋b.txt原有的內容。
但是,中間會提示:cp: overwrite ‘b.txt’? y
為什麼會提示呢?因為linux系統預設對cp命令做了別名alias cp='cp =i',若不想使用別名可使用\cp a.txt b.txt
(3)檔案a.txt------>目錄cptest:
cp a.txt cptest/
結果是在cptest目錄下建立同名同內容的a.txt。
(4)複製檔案a.txt,b.txt,c.txt到目錄cptest中:
cp a.txt b.txt c.txt cptest
結果是把a b c檔案同時複製到cptest目錄下。
注意:cp多個檔案時,檔案中間只能有一個空格!且目標必須存在且必須是目錄,其它均出錯!
(5)目錄dir1-------->目錄dir2
cp -r dir1 dir2
注意:複製目錄時,必須使用引數"-r"或者"-R"!
(6)複製多個目錄dir1,dir2,dir3到dir4
cp -r dir1 dir2 dir3 dir4
注意:複製多目錄時,目標目錄必須存在,否則複製失敗!
(7)將當前目錄"test/"下的所有檔案複製到新目錄"newtest"下:
$ cp –r test/ newtest
二、mv 為檔案/目錄改名、或移動檔案/目錄的位置
mv [options] source dest
-i: 若指定目錄已有同名檔案,則先詢問是否覆蓋舊檔案;
-f: 要覆蓋某已有的目標檔案時不給任何指示,直接覆蓋。
命令格式 |
執行結果 |
---|---|
mv 檔名 檔名 |
檔案改名,將原始檔名改為目標檔名 |
mv 檔名 目錄名 |
檔案移動,將檔案移動到目標目錄 |
mv 目錄名 目錄名 |
對目錄改名or移動; 目標目錄已存在,將移動到目標目錄;不存在則改名 |
mv 目錄名 檔名 |
出錯 |
三、rm 刪除一個檔案或目錄
-i 刪除前逐一詢問確認。
-f 強制刪除;即使原檔案屬性設為唯讀,亦直接刪除,無需逐一確認。
-r 將目錄及以下之檔案亦逐一刪除,若刪除目錄則必須加-r
檔案一旦通過rm命令刪除,則無法恢復,所以必須格外小心地使用該命令!
四、ls 顯示指定目錄下的內容
ls 預設只顯示當前目錄下的所有檔案或目錄的名稱
ls -l 在linux中預設被設定為別名 ll,除檔名稱外,也列出檔案型別、許可權、大小等詳細資訊
ls -t 按檔案建立時間先後次序列出,新檔案在前
ls -a 把隱藏檔案和目錄也顯示出來
ls -R 把目錄下的子目錄中的檔案或子子目錄內容全部都顯示出來
五、touch 建立檔案和修改檔案或目錄的時間屬性
1、語法:touch [options] filename
2、touch filename 當檔案filename不存在時,會建立一個空白檔案
3、touch file1/dir1 當檔案或目錄存在時,修改它們的時間屬性為當前系統時間
(可通過ll 命令來檢視檔案/目錄的時間屬性)
4、也可以帶引數,修改檔案或目錄的最近訪問時間、修改時間等等
六、mkdir 建立目錄
1、命令格式:mkdir 【選項】【檔名】
2、命令引數
使用幫助命令:man mkdir或mkdir -help
-m --mode=模式,設定許可權<模式> (類似 chmod)
-p --parents 遞迴建立目錄
-v, --verbose 每次建立新目錄都顯示資訊
3、命令例項
建立一個空目錄abc:mkdir abc
遞迴建立多個目錄:mkdir -p test/test1/test2
建立目錄時顯示日誌資訊:mkdir -v test3
建立許可權為777的目錄:mkdir -m 777 hao
七、su 與 su - 與sudo 切換使用者身份
用於變更為其它使用者的身份,除 root 外,需要鍵入該使用者的密碼。
1、su app
從當前使用者切換到app使用者,但是還在當前使用者的目錄下,即沒有改變使用者的環境。
2、su - root
從當前使用者切換到root使用者,並且轉到root使用者的家目錄下,即改變到了root使用者的環境。
3、sudo 執行命令
管理員授權一些普通使用者去執行一些root執行的操作,而不需要知道root密碼。
sudo vim /etc/group,在該檔案的 sudo 組中加入新的授權使用者,多個使用者間使用逗號分隔,從而使新使用者具有sudo許可權。
在 /etc/sudoers 檔案中配置安全策略(授權使用者可以做什麼,不可以做什麼),在配置行中新增NOPASSWD,去掉密碼驗證: ALL=(ALL) NOPASSWD: ALL
八、alias 設定指令的別名
alias [別名]=[指令名稱]
alias 別名:顯示出別名代表的指令
alias 若不加任何引數,則列出目前所有的別名設定。
若要每次登入是即自動設好別名,可在.profile或.cshrc中設定指令的別名
unalias命令用於刪除別名
unalias [-a][別名]
unalias 別名----刪除指定別名
unalias -a 刪除全部別名,慎用!
九、kill 刪除執行中的程式
1、殺死指定pid的程序
kill 12345
2、強制殺死程序
kill -KILL 12345
3、徹底殺死程序
kill -9 12345
十、其它命令--clear、who
1、clear:清除螢幕,沒有引數
2、who:顯示系統中有哪些使用者正在上面,不帶引數即可;
who -H 顯示出各列的標題資訊。