Linux文件和目錄管理(3.2)

絕對路徑和相對路徑

  • 絕對路徑:路徑的寫法一定是由根目錄 / 寫起的,例 /usr/local/mysql。

  • 相對路徑:路徑的寫法不是由根目錄 / 寫起的,例

    #cd /home
    #cd test

基本命令的運用

  1. cd的運用
  • cd:用於變更用戶所在目錄。若後面什麼都不跟,會直接進入到指定目錄下。
    注:cd後面只能是目錄名,如跟的是文件名會報錯。

#cd /tmp/
#pwd //用於顯示當前所在目錄
/tmp
#cd
#pwd
/root

  • “.”:表示當前目錄, “…”(這裏是兩個點,顯示出錯了):表示當前目錄的上一級目錄。

#cd /usr/local/lib
#pwd
/usr/local/lib
#cd .
#pwd
/usr/local/lib
#cd ..
#pwd
/usr/local

  1. mkdir和rmdir和rm的運用
  • mkdir用於創建目錄。格式爲mkdir -p 目錄名

mkdir -p /tmp/test/123
ls -ld /tmp/test/123//ld可以查看指定目錄的屬性(如目錄的創建時間)

  • rmdir用於刪除目錄。格式爲rmdir 目錄名,該命令只能刪除目錄,不能刪除文件,若目錄裏面有文件,就會報錯。

若你要刪的目錄是/tmp/test而裏面還有個123的文件:
#rmdir /tmp/test
rmdir刪除'/tmp/test' 失敗 :目錄非空
你需要這樣:#rmdir /tmp/test/123

tip:這個rmdir這能刪除空目錄,有侷限性。

  • rm用於刪除目錄。可刪除非空目錄,格式爲

#rm -r //刪除目錄前會詢問你是否刪除該目錄
#rm -f //強制刪除,不會詢問

  1. cp和mv的運用
  • cp爲複製。格式爲cp (選項)(來源文件)(目的文件)
    -r:複製一個目錄
    -i:安全選項,若遇到已存在的文件,會先詢問是否覆蓋

#mkdir 123
cp -r 123 456//把123複製成456

。。。。。。。。。。。。。。。。。。。。(分界線)
#cd 123
#ls
#touch 111 //用於創建文件
#touch 222
#cp -i 111 222
cp:是否覆蓋 '222? n'
echo 'abc' > 111 //echo用於打印,“>”起寫入作用
echo 'def' > 222
#cat 111 222
abc
def

  • mv移動。格式爲mv (選項) (源文件或目錄) (目標文件或目錄)
  1. #mv test1.txt test3 //將test1.txt文件移到目錄test3中

  2. #mv -t /opt/soft/test/test4/ test1.txt//又將test1移動到test4目錄中去

  3. mv -i log1.txt log2.txt//將文件file1改名爲file2,如果file2已經存在,則詢問是否覆蓋

  4. mv dir1 dir2 //移動目錄

  1. 查看文檔的命令
  • cat -n :查看文件時,把行號也顯示到屏幕上
  • cat -A:顯示所有內容,包括特殊字符
  • more 文件名:課查看文件的全部內容
  • less:比more的功能多一點,/XX,可查找當前文件相關的字符串
  • head:顯示文件前10行
  • tail:顯示文件最後10行
  1. 查看Linux文件屬性 :ls -l
  2. 更改文件的權限
  • chgrp:命令可以更改文件的所有組。格式爲:chgrp (組名) (文件名)
  • chown:可更改文件的所有者。格式爲:chown (-R) 賬戶名 文件名chown (-R) 賬戶名:組名 文件名

#mkdir dir3
#useradd user1 //創建用戶user1
#touch dir3/test3 //再dir3目錄下創建test3
#chown user1 dir3
#ls -ld dir3 //die3目錄所有者已經由root該爲user1
drwxr-xr-x 2user1 root 20 3月 2 11:31 dir3
#ls -l dir3//但dir3目錄下的test3文件所有者依舊是root
#chown -R user1:testgroup dir3//把test目錄以及該目錄下的文件都修改成所有者爲user1,所有組爲testgroup
#ls -l test
-rw-r--r-- 1 user1 testgroup 0 3月 2 11:31 test3

  • chmod:用於改變用戶對文件/目錄的讀寫權限,格式爲chmod -R xyz(代表數字) 文件名

相關規則:
1.字母方式
u:所有者
o:其他人
a:所有人
g:與所有者同組用戶
2.數字方式
r: 4
w:2
x:1
0:無權限
1:–x
2:-w-
3:-wx
4:r—
5:r-x
6: rw-
7:rwx
所有者:r+w+x=4+2+1=7
同組用戶:r+x=4+1=5其他人:r=4

  • umask:用於改變文件的默認權限。格式爲:umask xxx(xxx爲數字)
  • chattr:用於修改權限,格式:chattr (+_=)(Asaci)

1.操作符號
+:添加權限(相對)
-:刪除權限(相對)
=:設置權限 (絕對)
2.Asaci
A:+後表示文件或目錄的atime不可修改
s:+後,會將數據同步寫進磁盤
a:+後,表示只能追加不能刪除,非root用戶不能設定
c:+後,表示自動壓縮該文件,讀取時會自動解壓
i:+後,表示文件不能刪除、重命名、設定鏈接、寫入以及新增數據

  • lsattr:用於讀取文件或目錄的特殊權限,格式爲:lsattr (-aR) (文件/目錄名)

-a:連同隱藏文件一同列出
-R:連同目錄的數據一同列出

7.在Linux下搜索文件

  • which:查找vi和cat的絕對路徑,格式爲which vi(cat)
  • whereis:預先生成一個文件列表庫查找與給出的文件名相關的文件,格式爲whereis (-bms) (文件名稱)

-b:只查找二進制的文件
-m:只查找幫助文件(在man目錄下的文件)
-s:只查找源代碼文件

  • find:搜索工具。格式爲find (路徑) (參數)

-atime +n/-n:表示訪問的時間大於或小於n天的文件
-ctime +n/-n:表示寫入、更改inode屬性的時間大於或小於n天的文件
-mtime +n/-n:表示寫入的時間大於或小於n天的文件

8.Linux常見文件類型

  • 普通文件(regular file):ls -l查看目錄時第一個屬性“_”的文件
  • 目錄
  • 鏈接文件
  • 設備
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章