如何運行一組shell命令字符序列?
該腳本至少有以下錯誤:
1.如果將{j}改為${j}或$j,則需要取一個值。
2.expr語句用反引號(鍵盤上ESC下面的鍵)而不是單引號括起來,表示執行的是命令而不是簡單的字符串,expr后面的運算符左右兩邊應該有空格。
3.if和[]之間要有空格,if判斷表達式比較器兩邊也要有空格,數字和[]之間也要有空格。
我修改了一下,通過自己運行成功生成了你想要的系列。比較你自己:
一個
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
#!/bin/bash
#劇本?名字?
清楚的
i1
用于((j1jlt98j))
做
???echo-n?#34$j,`
如何在Linux下使用bashshell進行數學計算?
目前Linux提供了五種實現bashshell數學計算的(命令),分別是let、圓括號、方括號、expr和bc。下面我簡單介紹一下,感興趣的朋友可以試試:
Letcommand這是bash內置的一個算術運算命令,最簡單也最常用。可以實現大部分日常數學計算,包括加、減、乘、除、余數、自增、自減等。當然還有高級的位移運算、邏輯運算、條件運算等。這個命令也很容易實現。需要注意的是,這里的操作數只能是整數,否則命令會報錯:
括號這也是bashshell常用的數學計算方法。你需要用兩個括號把數學表達式括起來,然后進行相關計算,得到最終結果。其基本功能類似于let命令,可以實現大部分日常數學計算,包括加減乘除、自增自減等四則運算。,其操作數只能是整數:
方括號類似于圓括號。您需要用一個方括號將數學表達式括起來,然后執行一個運算以獲得最終結果。目前還支持自減自增、加減乘除等常見數學計算。需要注意的是,這里的操作數只能是整數,否則運算會出錯:
Expr命令這是Linux比較高級的數算命令,也是常用的。它支持加減乘除等常見的數算,此外,它還支持邏輯運算和關系運算等高級功能。就像前三種方法一樣,expr命令目前僅限于整數,并且運算符兩邊必須有空格,否則將報告語法錯誤:
Bc命令這也是一個比較高級的數算命令,類似于計算器。與前面四種方法(命令)不同,bc命令既支持整數運算,也支持浮點運算,可以人為設置精度,支持函數調用。如果需要實現復雜的計算功能,可以考慮使用這個命令,這個命令非常實用簡單:
至此,我們已經介紹完了Linuxbashshell環境下的數學計算。總的來說,這五種方法(命令)都很簡單。只要有一定的Linux基礎,熟悉相關文檔和例子,很快就能掌握。對于簡單的整數運算,前四種方法很容易實現。如果是復雜的浮點運算,可以使用bc命令。網上也有相關教程和資料,非常詳細。有興趣的可以搜一下。希望以上分享的內容能對你有所幫助,也歡迎大家提出意見和評論進行補充。