1. 程式人生 > 實用技巧 >Linux檔案和目錄管理(cd,pwd,ls,mkdir,rmdir,touch,cp,rm,mv,)

Linux檔案和目錄管理(cd,pwd,ls,mkdir,rmdir,touch,cp,rm,mv,)

##########################################

VMware和Ubuntu的安裝,

想來想去,還是需要安裝,不能老是使用Windows的,後面還有很多都要用到Linux系統的,這個可以說是開發人員必備的了,

基本的使用:
1,Windows下面C:\Windows這個是存放的系統相關的檔案,刪除了系統就崩潰了,C:\Program Files這個存放的安裝的程式,
Linux下面除了home還有其他很多的資料夾,都不能隨便動,所有的檔案操作最好只在home目錄下操作,其他的不要隨便動,更不能刪除,
/home就是家資料夾,/etc這是保持配置檔案的,比如伺服器配置都在這裡,/bin目錄,這裡面保持了可執行的二進位制檔案,比如可執行的命令,都在這裡,
Linux沒有碟符這個概念,只有一個根目錄,所有檔案都在它下面,Windows下面有多個盤,Linux可以多使用者,Windows同一時間只能是單使用者,

2,Ubuntu的介面,工作列,可以把一些程式拖拽到工作列,可以鎖定,可以解鎖,
視窗和選單欄是可以分離的,這個要注意,選單欄始終是在最上面的,因為同一時間啟用的視窗只能有一個,
ctrl shift +,就是放大視窗,ctrl -   就是縮小視窗,
按住Ctrl+Alt可以把滑鼠移動出來,按住alt鍵可以拖動視窗,

###############################################

3,為什麼學習命令,
因為做伺服器的管理工作,都是在電腦安裝一個ssh的客戶端,通過遠端的方式管理伺服器,這個ssh沒有圖形介面,必須要用終端命令, 作為程式設計師,必須要掌握Linux終端命令,這是必備技能,Linux命令有200多個,但是常用的20多個就可能了,基本就可以管理伺服器了,不停用你就記住了,不需要死記硬背 不需要把所有的命令一次性都學會,不常用的不用學,臨時學習,臨時查詢就可以了,

##################################

常用的Linux命令使用

1,ls 檢視當前資料夾的內容,list 這是最常用的命令,
2,pwd   檢視當前資料夾,print work directory
3,cd [目錄名]  切換資料夾,change directory,注意cd後面有空格,
4,touch [檔名] 如果檔案不存在,建立檔案,注意touch後面有空格,
5,mkdir[目錄名] 建立目錄  make directory,注意mkdir後面有空格,
6,rm[檔名] 刪除檔案 remove,注意rm後面有空格,刪除檔案,刪除目錄的時候需要加選項
7,clear 清屏

###########################################

總結:使用終端命令的格式;
1,命令 ls  pwd
2,命令 引數  touch 123.tex , mkdir aaa,
3,命令 選擇 引數:rm -r aaa ,刪除資料夾,
 
檢視幫助資訊,
1,命令 --help ,注意是兩個減號,
2,man 命令,空格 展示下一頁,回車鍵 下一行,b回滾一屏 f, 前滾一頁, q退出,
這個幫助是我們學過了忘記了,用來回顧的,一般一點不會的命令用這種方法也看不會,因為我英文不好

小技巧:
1,自動補全,tab鍵
2,檢視曾經使用過的命令,上下鍵,

#############################################

和檔案目錄相關的命令:

ls命令
ls -a,檢視隱藏檔案,touch  .123.txt,隱藏檔案最前面有點,
ls -l  顯示詳細資訊 -h 配合-l使用,檢視檔案的大小,ls -lh ,這樣是一樣的效果,ls -lha 這是檢視所有的檔案,
ls萬用字元的使用,* 任意多個字元,?任意一個字元,ls 1*,ls ?1.txt,使用萬用字元可以批量操作多個檔案,
ls萬用字元的字元組,ls [123]2.txt ,這樣就實現了指定選擇檔案,ls [1-3]2.txt ,

cd命令 cd 回車回到home目錄, cd /這就是到了根目錄 cd ~波浪號,回車回到home目錄,cd ~/桌面/ 這是到家目錄下面的桌面資料夾, cd . cd .. 點是當前目錄,點點是上一級目錄 cd - 在最近的兩次工作目錄之間來回切換, 相對路徑和絕對路徑 cd /home/andy/桌面,這就是絕對路徑,
touch命令 touch檔案如果不存在,建立檔案,如果存在修改檔案的末次修改時間
mkdir -p a1/b1/c1/d1可以一次性建立多個層次資料夾,
rm命令 rm命令一定要小心使用,刪除之後就不能恢復了, rm -r 資料夾,這是刪除資料夾, rm -f 資料夾,這是強制刪除,沒有任何提示資訊,不管有沒有, rm -r *這是把所有的檔案和目錄刪除了,

####################################

拷貝和移動命令

tree命令
tree,可以看到該目錄下的樹形結構,
tree -d ,只會顯示目錄,不會顯示檔案了,

cp命令,copy的縮寫 cp 原始檔 目標檔案 cp ./123.txt ./a1/b1/123.txt cp -i 原始檔 目標檔案 加上-i,如果複製的檔案在目標檔案已經存在,會提示你是否覆蓋,y或者n,不加就會直接覆蓋,這樣不夠安全, cp -r ./aaa/ ./a1/aaa/ 這是複製目錄,
mv命令 mv 原始檔 目標檔案,mv ./3.txt ./aaa/ mv 33.txt a1/aaa/ 移動資料夾和檔案是一樣的命令,不需要加選項, mv 同樣的檔案 不同的檔名, 可以實現修改檔名的功能,但是這種不安全,因為前面會覆蓋後面的,所以加上 mv -i a1 a2

#######################################

檔案內容相關的命令

cat命令,
cat 檔名,檢視檔案內容,一次性完整顯示,如果比較少可以使用這個,
more 檔名,檢視檔案內容,可以分屏顯示的,如果比較多,就需要這個,按 空格是展示一頁,按回車是展示一行,f,b,q退出
cat -b 檔名,可以輸出非空行的行號,
cat -n 檔名,輸出所有行的行號,檢視檔案的時候,可以看到有多少行程式碼

grep命令 grep python 123.txt 查詢檔案123中,是否有python grep -n python 123.txt,在查詢到的結果中,顯示行號, grep -v python 123.txt ,這是把除了python的行顯示出來, grep -vn python 123.txt ,這是把除了python的行顯示出來,這是把行號也顯示出來, grep -i S 123.txt,-i,這是忽略大小寫, grep -in S 123.txt,-i,這是忽略大小寫,這是把行號也顯示出來, grep命令-模式查詢 grep ^p 123.txt,這是要求p出現在行首, grep -n on$ 123.txt,這是要求on出現在行位,需要顯示行號,

#######################################

其他命令

echo命令
可以把echo 後面的內容 輸出到螢幕,這個命令很少單獨使用,經常和重定向結合使用,重定向,即使>和>>,這樣就可以把echo後面的內容,輸出到檔案了,
> 這是輸出,會覆蓋原有的內容,,ls -lh >b
>>這是追加,會追加到檔案的末尾,echo python >>b
這個厲害了,重定向既可以建立檔案還可以新增內容,

管道的概念和基本使用 管道的符號 | Linux中可以把一個命令的輸出,通過管道,作為另一個命令的輸入,所以要使用管道至少兩個命令, 後面的內容通常是使用more(讓命令的結果分屏顯示)或者是grep命令(在命令執行結束的結果中查詢指定的文字), ls -lha ~這是展示家目錄下面的所有檔案, ls -lha ~ | more ls -lha ~ | grep bas 這個管道的使用特別的重要,

######################################

遠端管理常用的命令

shutdown 關機和重啟
shutdown 直接回車,這就是一分鐘之後關機,
shutdown -c ,可以在一分鐘之內取消這次關機
shutdown -r 表示重新啟動,
shutdown -r now 表示立刻重啟,Ubuntu就會立刻重啟了,
shutdown 20:20 表示這個時間會關機
shutdown  +10 表示10分鐘之後關機,shutdown -c就可以取消,
最好不要關閉系統,shutdown命令一定要-r的選項(重新啟動),因為你關機了,就要手動重啟了,很麻煩,

網絡卡和IP地址的概念 網絡卡是負責網路通訊的硬體裝置,還有無線的網絡卡,比如WiFi ip地址是一個網絡卡上的地址資訊,通過ip可以唯一標識一個網絡卡, 比如,電話卡就是網絡卡,ip就是手機號, 怎麼檢視不同系統上繫結在網絡卡上的ip資訊? Windows中使用ipconfig就可以查看了, Ubuntu中使用ifconfig檢視ip地址,有IPV4和IPv6,這個就是網路資訊了,這個也是後面要學習的!! ping是檢測看看這個ip是不是通的,

#############################################

########################################