①在linux裡面使用expr命令進行運算,比如:expr 1 + 2結果就是3,輸入命令的時候注意不同字元之間的空格。
還有乘號使用的是*,這裡需要轉義,不能直接expr 1 * 2要expr 1 \* 2
這裡定義了2個變數。注意定義變數的時候是不要加空格的,而計算的時候是要加空格的。
結果:result = 30
②不僅使用expr可以進行運算操作,還可以使用括號進行運算
結果仍然是30,但是這裡面的乘號*不用轉義
③linux中的浮點數的計算
前面的東西只能運算整數,要想運算浮點數還得使用bc命令。當然,bc也可以算整數的。
命令列輸入 bc 開始進入計算器模式,退出這種模式需要輸入quit。輸入bc進入時會有許多的歡迎語,如果要去掉這些可以使用命令bc -q。
可以看到,運算的結果為0。這是因為計算器預設的是保留0位小數,如果想多保留幾位小數可以這樣
從結果還可以看出它不會四捨五入
④在shell指令碼中使用bc
前面是在命令列使用bc,沒有什麼太大的意思,我們最終還是為了學寫指令碼。
這是一種格式,由於後面是命令所以用反引號,echo後面有空格的,跟平時輸入的命令一樣。
然後就是「」雙引號,裡面有2條語句,scale=什麼,指定保留小數的位數,後面一條是表示式,用分號隔開。
接著乙個豎線|bc。這樣就把計算的結果放到變數中了。
表示式中可以帶變數的,不一定是具體的數字。
⑤bc與輸入重定向的結合。
這裡就放個截圖吧,理解起來也很簡單
這樣做的好處就是看起來更簡潔,當然,這個例子可能體現不出來。
但是 如果這樣子
var6=`echo "scale=3;($var1*var2)+($var3*$var4)"|bc`
計算的結果是var3+var4的結果
linux Linux學習總結 管道
在l i n u x系統中,管道用兩個指向同乙個臨時性v f s索引節點的檔案資料結構來實現。這 個臨時性的v f s索引節點指向記憶體中的乙個物理頁面。乙個例程用於寫管道,另乙個用於從管道中讀資料。從一 般讀寫普通檔案的系統呼叫的角度來看,這種實現方法隱藏了下層的差異。當寫程序執行寫 管道操作時,...
天天Linux(Linux 學習之一)
今天第一天來學習linux,剛開始庭鬱悶,我現在用的是2008,所以我就先是給linux分出來點空間,趙鵬同學介紹的centos,說是很穩定,所以我就拿來用了。系統裝上之後,網路連線。一切ok之後我該做什麼呢?先裝gcc 開啟終端 輸入 yum install gcc 一路狂飆下去 gcc裝好了我用...
linux Linux學習總結 套接字
bsd套接字介面 l i n u x支援多種套接字型別。套接字型別,是指建立套接字的應用程式所希望的通訊服務 型別。同一協議族可能提供多種服務型別,比如t c p i p協議族提供的虛電路與資料報就是兩 種不同的通訊服務型別,linux bsd支援如下幾種套接字型別 stream 提供可靠的面向連線...