執行 .sh 文件(以test.sh爲例)的三種方式:
test.sh中的命令腳本是:echo "Hello, shell script"
以下三種方式任意一種皆可執行.sh 文件:
1、前往.sh 文件的目錄,在bash(終端)中使用 ./test.sh 命令執行;
2、使用 絕對路徑/test.sh 的方式執行;
3、使用 sh test.sh 命令執行。
但是,,有人可能就會遇到“permission denied”的權限不允許的情況,,這時候就要修改一下文件的所屬用戶權限了。
一個文件的使用者分爲三種:所有者(一般也就是創建者)、所有者的同組用戶、其他用戶
- rw- rw- r-- :第一個小橫槓“-”表示這是一個普通文件如.sh文件或者.py文件等,如果是一個目錄而不是文件則橫線變成“d”;
後面的部分是每三個一組,分別表示所有者、所有者的同組用戶、其他用戶對這個文件的權限
r:表示擁有 讀 權限 ,權限代表數值爲 4
w: 表示擁有 寫 權限, 權限代表數值爲 2
x: 表示擁有 可執行 權限,權限代表數值爲 1
所以,讀寫權限可以表示爲6(4+2=6),讀寫可執行所有權限表示爲7(4+2+1=7),等等,想給哪個用戶什麼樣的權限一個數值就能搞定。
如 chmod 764 test.sh 表示分別給所有者、同組用戶、其他用戶分別以 7 、6 、4 的權限,即三種用戶對test.sh 文件分別擁有讀寫可執行、讀寫、讀 權限。
u :目錄或者文件的當前的用戶
g :目錄或者文件的當前的羣組
o :除了目錄或者文件的當前用戶或羣組之外的用戶或者羣組
a :所有的用戶及羣組
配合 “+” “-” 和“r,w,x”來標定相應的用戶權限。
如 chmod u+x test.sh 表示給目錄的當前用戶(所有者)賦予可執行的權限。
一下兩種命令等價:
1、chmod 751 file
說明: 給file的屬主分配讀、寫、執行(7)的權限,給file的所在組分配讀、執行(5)的權限,給其他用戶分配執行(1)的權限
2、chmod u=rwx,g=rx,o=x file
說明:同上
參考:http://www.cnblogs.com/peida/archive/2012/11/29/2794010.html