當前位置:首頁 » 編程軟體 » shell腳本test

shell腳本test

發布時間: 2022-06-29 09:14:59

1. 編寫一個shell腳本實現: 判斷用戶家目錄下(~)下面有沒有一個叫test的文件夾

#!/bin/bash

cd~
dir="test"
if[-d"$dir"];then
num=0
while(($num<3));do
read-p"Inputfilename:"file
if[-f"$dir/$file"];then
echo"fileisexists,pleaseinputotherfilename"
num=`expr$num+1`
continue
else
touch$dir/$file
break
fi
done
else
read-p"testdirisnotexists,areyouwanttocreateit?[y/n]"ch
if["$ch"="y"];then
mkdir-p$dir
else
exit1
fi
fi

2. 如何運行shell腳本

編寫好的shell腳本(如:test),可以採取兩種方式進行運行:
一、 $ sh test
一般不採用這種調用方式,尤其不採用「sh<test」的調用方式,因為這種方式將禁止shell讀取標准輸入。
也可以採用 $ ksh test
這種方式要求shell具有「可讀」的訪問許可權。
二、直接運行可執行的shell腳本之前,首先應使用下列chmod命令,把shell腳本文件設置為可執行的文件。
chmod 755 test(除文件屬主可寫之外,每個用戶均具有讀和可執行的訪問許可權)
chmod +rx test(同上)
chmod u+rx test(只有文件屬主具有讀和執行的訪問許可權)
按照上述要求設置shell腳本文件的訪問許可權後,可採用下列方式,直接運行shell腳本了。
1、test(如果命令檢索路徑包含當前目錄)
2、./test(如果命令減縮路徑不包含當前目錄)
*說明: sh test 方式調用一個shell叫蹦可能會禁止某些shell特定的擴展功能,因而可能引起腳本無法正確執行。

3. 我在Shell腳本的目錄下有test.sh 為什麼直接輸腳本名test.sh不能執行腳本,輸入./test.sh可以執行

直接輸入可以執行的程序,需要把你要執行的程序放到系統的環境目錄中,這樣操作系統會自動去環境目錄中搜索你的程序,如/bin,例如我們常用到cd, rm, mv ..., 而./表示我們要執行當前目錄下的文件,否則操作系統不知道你要執行文件的目錄。

4. 如何運行shell腳本

編寫好的shell腳本(如:test),可以採取兩種方式進行運行: 一、 $ sh test 一般不採用這種調用方式,尤其不採用「sh<test」的調用方式,因為這種方式將禁止shell讀取標准輸入。 也可以採用 $ ksh test 這種方式要求shell具有「可讀」的訪問許可權。 二、直接運行可執行的shell腳本之前,首先應使用下列chmod命令,把shell腳本文件設置為可執行的文件。 chmod 755 test(除文件屬主可寫之外,每個用戶均具有讀和可執行的訪問許可權) chmod +rx test(同上) chmod u+rx test(只有文件屬主具有讀和執行的訪問許可權) 按照上述要求設置shell腳本文件的訪問許可權後,可採用下列方式,直接運行shell腳本了。 1、test(如果命令檢索路徑包含當前目錄) 2、./test(如果命令減縮路徑不包含當前目錄) *說明: sh test 方式調用一個shell叫蹦可能會禁止某些shell特定的擴展功能,因而可能引起腳本無法正確執行。

5. shell腳本是什麼

當執行命令或程序語句是通過程序文件而不是命令行,那這個程序被稱為Shell腳本。如果Shell腳本內置很多命令、語句及循環控制,然後一次性執行完畢,這種通過文件執行腳本的方式稱為非交互方式。用戶可以在Shell腳本中輸入一系列命令及命令語句組合。這些命令、變數和流程式控制制語句等有機地結合在一起,就形成一個功能強大的Shell腳本。

6. linux下利用test命令的判斷文件屬性的功能編寫一個shell腳本

對於文件是否有讀寫許可權,這個沒有涉及
#!/bin/bash
read -p "please input the file name:" file
if [ ! -n "$file" ];
then
echo please input the file name please
exit 0
fi
ls $file > /dev/null 2>&1
if [ $? -eq 0 ]
then
echo file exist
cp $file $file.bak
vi $file
else
echo file not exist!
fi

7. 跪求 用Shell 腳本 實現 統計test目錄的各文件的行數 並分類

#!/bin/bash
# count the line of the file.
MYDIR="/root/test"
DIRLIST=`ls ${MYDIR}`
SF=()
MF=()
LF=()
for i in ${DIRLIST}
do
LINE=`cat ${MYDIR}/$i | wc -l`
if ((${LINE}<10))
then
SF=(${SF[*]} $i)
elif ((${LINE}>=10)) && ((${LINE}<=100))
then
MF=(${MF[*]} $i)
elif ((${LINE}>100))
then
LF=(${LF[*]} $i)
fi
done
echo Small files: ${SF[*]}
echo Medium files: ${MF[*]}
echo Large files: ${LF[*]}

已測試正確並無錯誤,把你要測試的目錄的路徑改下即可

8. 編寫一個測試文件類型胡shell腳本命令testfile.sh

shell 判斷語句

流程式控制制 "if" 表達式 如果條件為真則執行then後面的部分: if ....; then
....
elif ....; then
....
else
....
fi
大多數情況下,可以使用測試命令來對條件進行測試。比如可以比較字元串、判斷文件是否存在及是否可讀等等… 通常用" [ ] "來表示條件測試。注意這里的空格很重要。要確保方括弧的空格。
[ -f "somefile" ] :判斷是否是一個文件
[ -x "/bin/ls" ] :判斷/bin/ls是否存在並有可執行許可權
[ -n "$var" ] :判斷$var變數是否有值
[ "$a" = "$b" ] :判斷$a和$b是否相等 -r file用戶可讀為真
-w file用戶可寫為真
-x file用戶可執行為真
-f file文件為正規文件為真
-d file文件為目錄為真
-c file文件為字元特殊文件為真
-b file文件為塊特殊文件為真
-s file文件大小非0時為真
-t file當文件描述符(默認為1)指定的設備為終端時為真
######################################################### 含條件選擇的shell腳本
對於不含變數的任務簡單shell腳本一般能勝任。但在執行一些決策任務時,就需要包含if/then的條件判斷了。shell腳本編程支持此類運算,包括比較運算、判斷文件是否存在等。基本的if條件命令選項有: -eq —比較兩個參數是否相等(例如,if [ 2 –eq 5 ])
-ne —比較兩個參數是否不相等
-lt —參數1是否小於參數2
-le —參數1是否小於等於參數2
-gt —參數1是否大於參數2
-ge —參數1是否大於等於參數2
-f — 檢查某文件是否存在(例如,if [ -f "filename" ])
-d — 檢查目錄是否存在
幾乎所有的判斷都可以用這些比較運算符實現。腳本中常用-f命令選項在執行某一文件之前檢查它是否存在。 ################################################################## 判斷文件是否存在 #!/bin/sh
today=`date -d yesterday +%y%m%d`
file="apache_$today.tar.gz"
cd /home/chenshuo/shell
if [ -f "$file" ];then
echo "OK"
else
echo "error $file" >error.log
mail -s "fail backup from test" [email protected] <error.log
fi

9. 編寫shell腳本test,輸入兩個數,如果目錄存在文件a則顯示該腳本名稱和兩個數相加,否則當前用戶主目錄

read -p "輸入兩個數:" num1 num2
if [ `find / -type f -name a|wc -l` -ne 0 ];then
echo "$0 $[ $num1 + $num2 ]"
else
cd
pwd
fi
----------------------------------------------------------------------------
完善了下 不能輸入空 不能輸入特殊字元
#!/bin/sh
while true
do
read -p "輸入兩個數:" num1 num2
[[ ! -n "$num1" ]] && echo "輸入不對" && continue
[[ ! -n "$num2" ]] && echo "輸入不對" && continue
expr $num1 + $num2 &>/dev/null
[ $? -ne 0 ] && echo "輸入不對" && continue
if [ `find / -type f -name "a"|wc -l` -ne 0 ];then
echo "$0 $[ $num1 + $num2 ]"
exit
else
cd
pwd
exit
fi
done

10. 如何在shell腳本中,判斷一個基本命令執行是否成功

1.連接到相應的Linux主機,進入Linux命令行狀態,等待shell命令的輸入。

熱點內容
免費加密隱身俠 發布:2024-05-05 05:07:54 瀏覽:613
我的世界模組伺服器推薦手機版 發布:2024-05-05 05:02:49 瀏覽:818
pr默認存儲 發布:2024-05-05 04:29:31 瀏覽:553
roblox跑酷腳本怎麼做 發布:2024-05-05 03:57:35 瀏覽:702
捷徑清理緩存 發布:2024-05-05 03:57:35 瀏覽:479
ftputility哪裡下載 發布:2024-05-05 03:47:13 瀏覽:1001
雷凌運動版如何連接安卓手機導航 發布:2024-05-05 03:42:48 瀏覽:268
自動鬼使黑腳本 發布:2024-05-05 03:10:49 瀏覽:880
游戲腳本編程書籍推薦 發布:2024-05-05 02:59:13 瀏覽:72
編譯器書籍推薦 發布:2024-05-05 02:57:02 瀏覽:56