shell腳本練習題

下面列出了幾個linux學習中的shell腳本題目


1、九九乘法表

#!/bin/bash
echo "九九乘法表"
# 注意((之間不能有空格、加減乘除的格式、還有轉義字符\*、-ne
for (( i=1; i<=9; i=i+1 ))
do
 for (( j=1; j<=i; j=j+1 ))
 do
  ((result=$i*$j)) 
  echo -ne $i\*$j=$result"\t"
 done
 echo 
done

2、求斐波那契數列的前10項及總和

#!/bin/bash
num[0]=0
num[1]=1
for (( i=2; i<10; i=i+1 ))
do
	num1=${num[i-1]}
	num2=${num[i-2]}
	num[i]=$(($num1+$num2))

done
# 打印所有元素
echo ${num[*]}
sum=0
for (( i=0; i<10; i=i+1 ))
do
	sum=$(($sum+${num[i]}))
done
echo $sum

3、編寫一個腳本程序備份給定目錄下面的所有文件,由第一個參數指出文件所在的目錄

#!/bin/bash
read -p "請輸入您要備份的目錄的絕對路徑" beifenDir
read -p "請輸入您要備份到那個目錄下" destinationDir
# 強制遞歸複製
cp -rf $beifenDir $destinationDir

4、設計一個程序cuts.sh,它由標準輸入讀取數據,獲取由第一個參數n和第二個參數m所限定範圍的數據,nm都是整數,即從輸入的字符串中抽取第n個字符至第m個字符之間的所有字符(包括這兩個字符)例如:

$./cuts.sh 11 14

thisis a test of cuts program    #(輸入)

test                        #(顯示結果)

#!/bin/bash
read -p "請輸入一個字符串" str
# -c代表截取字符串中的一段
echo $str | cut -c $1-$2

5、編寫Shell 程序 計算1100 之間所有奇數之和

#!/bin/bash
i=1
max=100
sum=0
while [ $i -le $max ]
do
	if [  $(($i%2)) -eq 1 ];then
		sum=$(($sum+$i))
	fi
	
	i=$(($i+1))

done
echo $sum	

6、利用數組形成存放10個城市的名字,然後利用for循環把他們打印出來

#!/bin/bash
var[10]="nanchang yichun haha djdj ksks hshs shq hsv has haz"
for (( i=1; i<=10; i=i+1 ))
do
	echo "${var[$i]}"
done





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