關於Linux命令與shell腳本學習記錄(1)

文件與目錄列表

ls -F 能輕鬆區分文件和目錄;

ls -a 把隱藏文件和普通文件及目錄一起顯示出來;

ls -F -R這個不僅有ls -F功能,後加-R是一個遞歸選項(使文件內的子目錄顯示);

ls -l 長列表參數,這樣能看見文件類型,權限,硬鏈接,組名,用戶名但是沒有inode;

ls -l xx?xx  其中問號是單個字符的模糊搜索;

ls -l xx*xxx 這個命令裏*可以在操作數前,中,後。*表示字符串模糊搜索;

ls -l xx[ai]或者ls -l xx[a-i]   此命令搜索文件可做限定查找,第一個可限定查找xxxa或者xxxi,第二個類似於Verilog的拼接符{}檢索a至i之間的字符;

處理文件:

//創建文件、

touch xxx 創建文件

再次touch同一個文件會更新文件更新日期但是不會改變文件內容

如果只想改變訪問時間

可以-a參數     touch -a xxx

那麼接下來要使用ls 命令查看最近訪問時間

可以用ls -l --time=atime xxx

//複製文件、

cp xxx xxxx此命令需要兩個參數源對象和目標對象,在這裏cp命令使xxx文件複製到xxx,xxxx爲全新文件但是內容和xxx相同

這個操作有個弊端就是shell不會提示目標對象是否已經存在,最好加上-i選項強制shell詢問是否需要覆蓋已有文件

cp -i xxx xxxx

cp -R xxx/ xxxx 這條命令可以遞歸複製整個目錄

//鏈接文件

鏈接文件分爲兩種分別是符號鏈接和硬鏈接

符號鏈接就是一個實實在在的文件

ln -s xxx sl_xxx

此處新鏈接的文件sl_xxx爲全新獨立文件我們可用通過ls -i來查看inode碼

硬鏈接會創建獨立的虛擬文件,其中包含了原始文件的信息及位置。

ln xxx hl_xxx 可以簡單記爲符號鏈接ln加-s選項而硬鏈接不用加選項直接鏈接,這個時候使用ls -li *xxx可以看到xxx和hl_xxx的inode碼是一樣的,這是因爲它們終歸是同一個文件。

//重命名文件

在Linux裏重命名文件稱爲移動moving。mv命令

mv fall fbll 將fall 重命名爲fbll

也可以使用mv來移動文件的位置 mv fbll xxx/

同樣也可以使用mv來移動整個目錄及其內容

接下來要記錄的就是最危險的操作,刪除文件

//刪除文件

rm -i fall這個的-i與之前使用複製命令cp 時一樣強制shell詢問,不然太果斷容易造成不必要的損失

rm: remove regular empty file 'fall'?當shell詢問這句話得時候只需要回答y/n就ok了

rm -f這個參數可以強制移除,小心爲妙。

//處理目錄

mkdir New_xxx 這個命令很簡單很好記mk——make

如果需要同時創建多個目錄和子目錄呢?需要加入-p參數

mkdir -p New_xxx/sb/sbb/sbbbb結了就是這樣

操作完成後可以試試用遞歸顯示文件 ls -R New_xxx

如果需要刪除目錄的話使用的命令就不是rm了,因爲刪除目錄是一個棘手的事情shell爲了防止我們捅婁子所以使用新的命令

rmdir New_xxx移除New_xxx目錄

但是rmdir默認只允許刪除空目錄,所以我們可以先用rm刪除New_xxx下的文件之後進行rmdir操作

也可以使用-ri選項遞歸詢問刪除目錄下的文件:rm -ri New_xxx

這樣還是很麻煩那麼也可以使用經典的刪庫跑路命令rm -rf 這個命令既沒警告信息也沒有聲音提示,相當爽!

說到這裏我們可以用tree工具更加直觀的方式展示目錄,子目錄及其中的文件。

查看文件:

//查看文件類型

file xxx文件類型會有顯示,前提是能看懂英語就能明白顯示出來的寫的是什麼。

//查看整個文件

cat xxx

cat -n xxx 加入行號查看;

cat -b xxx 給有文本的行加上行號;

cat -T xxx 不顯示製表符;

more 命令會使文件分頁顯示。

less命令一次顯示一屏的文件文本。

查看部分文件:

tail xxx查文件後10行內容,這裏可以自己定義查看後幾行的文本加入-n參數即可;

tail -n 2 xxx查看xxx文件後兩行的內容;

head命令,看這個名字就知道了查看文件前部的內容;
head xxx查看xxx文件前10行內容;

head -5 xxx 查看xxx文件前5行內容;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章