成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

工具bc : 一個(gè)命令行計(jì)算器

運(yùn)維 系統(tǒng)運(yùn)維
bc 工具可以為你提供的功能可以滿足你對(duì)科學(xué)計(jì)算器、金融計(jì)算器或者是簡(jiǎn)單計(jì)算器的期望。另外,假如需要的話,它還可以從命令行中被腳本化。這使得當(dāng)你需要做復(fù)雜的數(shù)學(xué)運(yùn)算時(shí),你可以在 shell 腳本中使用它。

[[169736]]

假如你在一個(gè)圖形桌面環(huán)境中需要一個(gè)計(jì)算器時(shí),你可能只需要一路進(jìn)行點(diǎn)擊便可以找到一個(gè)計(jì)算器。例如,F(xiàn)edora 工作站中就已經(jīng)包含了一個(gè)名為 Calculator 的工具。它有著幾種不同的操作模式,例如,你可以進(jìn)行復(fù)雜的數(shù)學(xué)運(yùn)算或者金融運(yùn)算。但是,你知道嗎,命令行也提供了一個(gè)與之相似的名為 bc 的工具?

bc 工具可以為你提供的功能可以滿足你對(duì)科學(xué)計(jì)算器、金融計(jì)算器或者是簡(jiǎn)單計(jì)算器的期望。另外,假如需要的話,它還可以從命令行中被腳本化。這使得當(dāng)你需要做復(fù)雜的數(shù)學(xué)運(yùn)算時(shí),你可以在 shell 腳本中使用它。

因?yàn)?bc 也被用于其他的系統(tǒng)軟件,例如 CUPS 打印服務(wù),所以它可能已經(jīng)在你的 Fedora 系統(tǒng)中被安裝了。你可以使用下面這個(gè)命令來進(jìn)行檢查:

  1. dnf list installed bc 

假如因?yàn)槟承┰蚰銢]有在上面命令的輸出中看到它,你可以使用下面的這個(gè)命令來安裝它:

  1. sudo dnf install bc 

用 bc 做一些簡(jiǎn)單的數(shù)學(xué)運(yùn)算

使用 bc 的一種方式是進(jìn)入它自己的 shell。在那里你可以按行進(jìn)行許多次計(jì)算。當(dāng)你鍵入 bc 后,首先出現(xiàn)的是有關(guān)這個(gè)程序的警告:

  1. $ bc 
  2. bc 1.06.95 
  3. Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc. 
  4. This is free software with ABSOLUTELY NO WARRANTY. 
  5. For details type `warranty'. 

現(xiàn)在你可以按照每行一個(gè)輸入運(yùn)算式或者命令了: 

  1. 1+1 

bc 會(huì)回答上面計(jì)算式的答案是: 

在這里你還可以執(zhí)行其他的命令。你可以使用 加(+)、減(-)、乘(*)、除(/)、圓括號(hào)、指數(shù)符號(hào)(^) 等等。請(qǐng)注意 bc 同樣也遵循所有約定俗成的運(yùn)算規(guī)則,例如運(yùn)算的先后順序。你可以試試下面的例子: 

  1. (4+7)*2 
  2. 4+7*2 

若要退出 bc 可以通過按鍵組合 Ctrl+D 來發(fā)送 “輸入結(jié)束”信號(hào)給 bc 。

使用 bc 的另一種方式是使用 echo 命令來傳遞運(yùn)算式或命令。下面這個(gè)示例就是計(jì)算器中的 “Hello, world” 例子,使用 shell 的管道函數(shù)(|) 來將 echo 的輸出傳入 bc 中: 

  1. echo '1+1' | bc 

使用 shell 的管道,你可以發(fā)送不止一個(gè)運(yùn)算操作,你需要使用分號(hào)來分隔不同的運(yùn)算。結(jié)果將在不同的行中返回。 

  1. echo '1+1; 2+2' | bc 

精度

在某些計(jì)算中,bc 會(huì)使用精度的概念,即小數(shù)點(diǎn)后面的數(shù)字位數(shù)。默認(rèn)的精度是 0。除法操作總是使用精度的設(shè)定。所以,如果你沒有設(shè)置精度,有可能會(huì)帶來意想不到的答案:

  1. echo '3/2' | bc 
  2. echo 'scale=3; 3/2' | bc 

乘法使用一個(gè)更復(fù)雜的精度選擇機(jī)制:

  1. echo '3*2' | bc 
  2. echo '3*2.0' | bc 

同時(shí),加法和減法的相關(guān)運(yùn)算則與之相似:

  1. echo '7-4.15' | bc 

其他進(jìn)制系統(tǒng)

bc 的另一個(gè)有用的功能是可以使用除了十進(jìn)制以外的其他計(jì)數(shù)系統(tǒng)。例如,你可以輕松地做十六進(jìn)制或二進(jìn)制的數(shù)學(xué)運(yùn)算??梢允褂?ibase 和 obase 命令來分別設(shè)定輸入和輸出的進(jìn)制系統(tǒng)。需要記住的是一旦你使用了 ibase,之后你輸入的任何數(shù)字都將被認(rèn)為是在新定義的進(jìn)制系統(tǒng)中。

要做十六進(jìn)制數(shù)到十進(jìn)制數(shù)的轉(zhuǎn)換或運(yùn)算,你可以使用類似下面的命令。請(qǐng)注意大于 9 的十六進(jìn)制數(shù)必須是大寫的(A-F):

  1. echo 'ibase=16; A42F' | bc 
  2. echo 'ibase=16; 5F72+C39B' | bc 

若要使得結(jié)果是十六進(jìn)制數(shù),則需要設(shè)定 obase :

  1. echo 'obase=16; ibase=16; 5F72+C39B' | bc 

下面是一個(gè)小技巧。假如你在 shell 中做這些十六進(jìn)制運(yùn)算,怎樣才能使得輸入重新為十進(jìn)制數(shù)呢?答案是使用 ibase 命令,但你必須設(shè)定它為在當(dāng)前進(jìn)制中與十進(jìn)制中的 10 等價(jià)的值。例如,假如 ibase 被設(shè)定為十六進(jìn)制,你需要輸入: 

  1. ibase=A 

一旦你執(zhí)行了上面的命令,所有輸入的數(shù)字都將是十進(jìn)制的了,接著你便可以輸入 obase=10 來重置輸出的進(jìn)制系統(tǒng)。

結(jié)論

上面所提到的只是 bc 所能做到的基礎(chǔ)。它還允許你為某些復(fù)雜的運(yùn)算和程序定義函數(shù)、變量和循環(huán)結(jié)構(gòu)。你可以在你的系統(tǒng)中將這些程序保存為文本文件以便你在需要的時(shí)候使用。你還可以在網(wǎng)上找到更多的資源,它們提供了更多的例子以及額外的函數(shù)庫??鞓返赜?jì)算吧!

責(zé)任編輯:龐桂玉 來源: Linux中國
相關(guān)推薦

2011-06-17 16:49:05

Cocoa蘋果

2020-08-21 07:35:12

Linux命令行計(jì)算器

2019-06-10 15:00:27

node命令行前端

2020-12-08 08:46:07

GoJava工具

2019-05-30 10:40:04

ddgrLinuxDuckDuckGo

2022-02-17 18:21:47

工具HTTPie客戶端

2018-05-03 12:35:05

Linux命令Pet

2016-09-23 20:16:23

TaskwarriorLinux命令行工具

2018-06-12 15:10:11

Linuxvim命令PacVim

2018-11-21 09:57:44

命令行Linux文件

2020-12-10 16:16:08

工具代碼開發(fā)

2020-12-11 06:44:16

命令行工具開發(fā)

2018-07-05 08:30:54

Python命令行工具shell

2014-08-25 16:23:24

2021-02-02 10:15:55

工具命令行Node

2022-01-26 18:59:08

Python工具

2023-06-09 07:45:29

Kuberneteskubectl

2021-05-17 10:32:10

命令行工具GitHub代碼

2022-01-11 09:05:07

工具Python 命令行

2019-04-04 11:00:40

iWant命令行工具開源
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 国产综合久久久久久鬼色 | 亚洲电影成人 | 在线婷婷| 精彩视频一区二区三区 | 国产欧美在线 | 色综合久久久久 | 91在线区| 亚洲一区二区三区久久 | 人人干在线视频 | 午夜男人视频 | www.9191 | 日韩不卡一区二区 | 一区二区免费在线视频 | 欧美综合一区 | 亚洲www啪成人一区二区 | 欧美一级免费看 | 欧美视频日韩 | 欧美一级一 | 一区二区三区在线播放视频 | 一区二区国产精品 | 欧美日韩亚 | 精品1区2区 | 亚洲国产欧美在线 | 国产清纯白嫩初高生在线播放视频 | 99久久久久| 午夜精| 欧美一区二区三区高清视频 | 欧美一级片在线看 | 免费麻豆视频 | 99久久久久久久 | 欧美激情精品久久久久久变态 | 男女网站视频 | 国产自产21区 | 成人av一区二区三区 | 一区天堂 | 亚洲高清在线免费观看 | 正在播放国产精品 | 国产成人高清视频 | 亚洲码欧美码一区二区三区 | 色接久久| 五月激情综合网 |