linu題目編寫shell指令碼它能夠顯示下面系

時間 2021-08-11 18:10:21

1樓:匿名使用者

0,1,1,2,3,4,8,13

那個應當是5吧。

*****===

#!/bin/sh

a=0b=1

echo -n $a,$b

for (( i=0;i<8;i++))

doc=$((a+b))

a=$b

b=$c

echo -n ,$c

done

echo

將上面儲存成fibonacci.sh。

然後在命令列輸入

chmod u+x ./fibonacci.sh最後再執行

./fibonacci.sh

即可以得到結果:

0,1,,1,2,3,5,8,13,21,34

2樓:米海濤

a1=1

a0=0

i=1echo $i:$a0

while test $i -ne $1

doi=`expr $i + 1`

echo $i:$a1

a2=`expr $a1 + $a0`

a0=$a1

a1=$a2

done

儲存以上指令碼**為serial.sh

計算時需給出要打出的數列元素個數,如列印5個元素,執行sh serial.sh 5

1:02:1

3:14:2

5:3要列印10個元素:

sh serial.sh 10

1:02:1

3:14:2

5:36:5

7:88:13

9:21

10:34

linux中編寫shell指令碼,輸出如下序列:1,3,2,4,3,5,4,6,···100 。[附圖]

3樓:匿名使用者

指令碼至少有如下錯抄誤:

改為$或$j,是要取值的

bai啊

expr語句du外面是反引號(鍵盤上esc下面那個鍵)zhi而不是單引號,表示執行dao命令而不是單純一個字串,expr後面的運算子左右兩側要有空格。

if跟[之間是要有空格的,if判斷表示式比較符兩側也要有空格,數字跟 [ ]之間要有空格。

我修正了,自己執行成功生成你要的數列了。你自己對比下吧:

#!/bin/bash

#script name prg8.sh

clear

i=1for ((j=1;j<=98;j++))doecho -n "$j,`expr $j + 2`,"

if [ $i -eq 10 ]

then

echo ""

i=1else

i=$((i+1))

fidone

echo ""

註釋裡已經說了,script name prg8.sh,指令碼名叫prg8.sh,當然,叫什麼名字是你的自由。

4樓:匿名使用者

孩子指令碼語言是不需要編譯的,sh 12.c就可以了,還有shell指令碼一般以sh為副檔名,不要用c,也可以chmod +x 12.c 加可執行許可權,./12.c來執行

5樓:匿名使用者

你只是想輸出1~100這100個數字??

直接用迴圈就行了啊

**#!/bin/bash

for (( i=1; i<=100 ; i=i+1 ))doecho "$i"

done

————————————————————

看錯題目了,當我沒答

shell變數重新賦值問題,shell指令碼 變數動態賦值問題

先不正面回答問題。先談一個指令碼中可疑之處。在對檔案filename.txt的每一行進行相同或有規律的處理時,常用2種方法。常用的第一種方法是 就是檔案內容輸入重定向的方法 while read line do對 line的處理命令 done filename.txt 常用的第二種方法是 cat加管...

如何在shell指令碼中執行cd命令

在工作中,網際網路公司,經常不是直接登入到服務上,而是通過跳板機進行中轉。這樣就會用到cd命令切換目錄。編輯shell檔案 vim switchdir.sh plain view plain copycd opt service mobile kafka 2.10 0.8.1 lizt bin so...

在shell 指令碼中是什麼意思

表示引數的數量。再給你點我總結的其他的觀關於 的。上一條命令執行後返回的狀態。引數的數量。所有引數的內容。當前程序的程序號。後臺執行的最後一個程序號。0 當前執行的程序名。shell 指令碼中 分別代表什麼意思?給你個全的,你在linux環境下多試下就明白了 0 這個程式的執行名字。n 這個程式的第...