#!/bin/shfor((i=1;i<=100;i++))
dofor((k=2;k<=i;k++))
doif [ $k -eq $i ]
then
echo"$i
"break
elif [ $(($i%k)) -eq 0
]
then
break
fidone
done
優化版本:(至少提高速度30%)
#!/bin/shfor((i=1;i<=2000;i++))
dofor((k=2;k<=i;k++))
doif [ $k -eq $i ]
then
echo"$i
"break
elif [ $(($i%k)) -eq 0
]
then
break
#優化部分,如果除以乙個數本身的二分之一後還不為0,那麼可以肯
#---定這個數不會再被任何數整除(本身除外)
elif [ $k -eq $(($i/2
)) ]
then
echo"$i
"break
fidone
done
測試結果:
列出1-2000裡的質數
執行優化前的指令碼:
[root@bj ~]# time (sh zhishu.sh)
real 0m11.840s
user 0m11.559s
sys 0m0.248s
執行優化後的指令碼:
[root@bj ~]# time (sh zhishu.sh)
real 0m6.617s
user 0m6.444s
sys 0m0.156s
Shell指令碼(三) Shell指令碼入門
1 指令碼格式 指令碼以 bin bash開頭 指定解析器 2 第乙個shell指令碼 helloworld 1 需求 建立乙個shell指令碼,輸出helloworld 2 案例實操 atguigu hadoop101 datas touch helloworld.sh atguigu hadoo...
Shell指令碼和shell
1.shell script,shell指令碼與windows dos下的批處理相似,也就是用各類命令預先放入到乙個檔案中,方便一次性執行的乙個程式檔案,主要是方便管理員進行設定或者管理用的。但是它比windows下的批處理更強大,比用其他程式設計程式編輯的程式效率更高,畢竟它使用了linux un...
shell 執行shell指令碼
bin bash echo hello world 是乙個約定的標記,它告訴系統這個指令碼需要什麼直譯器來執行,即使用哪一種 shell。echo 命令用於向視窗輸出文字。1 作為可執行程式 chmod x test.sh 使指令碼具有執行許可權 test.sh 執行指令碼注意,一定要寫成 test...