1. 程式人生 > >使指令碼能夠直接執行的指令碼...

使指令碼能夠直接執行的指令碼...

背景

每次執行指令碼時最難受的就是./執行許可權不足,還得手動chmod,於是就寫了個指令碼全自動chmod.

雖然知道這個問題肯定有其他更好的方法但是依舊發上來留個念…

正文

#!/bin/bash

goin(){
cd $1
echo "============ going into $1 ============"
ls > tmp.txt
for i in `cat tmp.txt`;do
    if [ -d $i ];then
        goin $i

    elif [ ${i#*.} = 'sh' ];then
        echo "> chmod on $i
"
chmod 777 $i || exit -1 elif [ ${i#*.} = 'py' ];then echo "> chmod on $i" chmod 777 $i || exit -1 #追加elif從句以改變其他型別指令碼執行許可權 fi done rm tmp.txt echo "============ leaving $1 ============" cd .. } goin ./

說明

指令碼不需要引數,放到想要chmod的資料夾內,本指令碼會遞迴地改變當前目錄下指令碼的許可權.