เครื่องคิดเลขบรรทัดคำสั่งง่าย ๆ


19

ปัญหา:

ทุก ๆ ครั้งที่ฉันต้องทำเลขคณิตอย่างง่ายในสภาพแวดล้อมบรรทัดคำสั่ง EG ได้รับเอาต์พุตต่อไปนี้:

Disk /dev/sdb: 256GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system     Name  Flags
 1      1049kB  106MB   105MB   fat32                 hidden, diag
 2      106MB   64.1GB  64.0GB  ext4
 3      64.1GB  192GB   128GB   ext4
 5      236GB   256GB   20.0GB  linux-swap(v1)

วิธีง่ายๆในการคำนวณในบรรทัดคำสั่งขนาดของพื้นที่ที่ไม่ได้ปันส่วนระหว่างพาร์ติชัน 3 และ 5 คืออะไร

สิ่งที่ฉันได้ลองไปแล้ว:

ก่อนคริสต์ศักราช

bc
bc 1.06.95
Copyright 1991-1994, 1997, 1998, 2000, 2004, 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
236-192
44
quit

ที่เป็นตัวหนาข้างต้นเป็นทุกสิ่งที่ฉันจำเป็นต้องพิมพ์ที่จะทำง่ายๆ236-192เป็นbc 1+1เสียงสะท้อนFile 1+1 is unavailable.

expr

expr 236 - 192

ที่ฉันต้องพิมพ์ช่องว่างก่อนและหลังผู้ประกอบการที่เป็นเพียงเสียงสะท้อนexpr 1+11+1


3
หากคุณตั้งใจที่จะทำเช่นนี้โต้ตอบคุณไม่จำเป็นต้องพิมพ์quitลงในbc; กดctrl-Dจะทำเช่นนั้นจะอยู่ในโปรแกรมแบบโต้ตอบใด ๆ
marcelm

2
dcคือ (IMO) bcไกลกว่า
William Pursell

1
ฉันคิดว่าช่องว่างระหว่าง ptn 3 และ 5 ไม่ได้ถูกจัดสรรควรเป็น 236 - 192 และไม่ใช่ 236 - 128?
Digital Trauma

@ DigitalTrauma ตาดี! (มันเป็นเพียงตัวอย่างและไม่มีใครเห็นอันนั้น!)
Fabby

1
@JanM ฉันเป็นผู้หนึ่งที่สนับสนุน .... ;-)
Fabby

คำตอบ:


33

คุณสามารถลดจำนวนการใช้คำฟุ่มเฟือยที่เกี่ยวข้องในการใช้bc:

$ bc <<<"236-192"
44
$ bc <<<"1+1"
2

(สมมติว่าเชลล์ของคุณรองรับสิ่งนั้น)

หากคุณต้องการให้เป็นหน้าที่:

$ c() { printf "%s\n" "$*" | bc }
$ c 1+1
2

จัดเก็บcคำจำกัดความในไฟล์เริ่มต้นเชลล์ที่คุณชื่นชอบหากคุณต้องการให้มันพร้อมใช้งานเสมอ


2
bc<RET>236-128<RET>quit<RET>การกดแป้น 16 ครั้ง bc<<<"236-128"<RET>การกดแป้น 15 ครั้ง ไม่ใช่สิ่งที่ฉันจะเรียกว่า "จำนวนที่ลดลงอย่างมากในการพิมพ์" :-) นอกจากนี้bcสามารถออกได้ด้วย^Dดังนั้นตัวเลือกแรกจะลดลงเหลือ 13 การกดแป้น (นับ^Dเป็นสอง)
L. Levrel

ใช่มันเกี่ยวกับการใช้คำฟุ่มเฟื่อยมาก ;-)
Stephen Kitt

2
@ L.Levrel ด้วยฟังก์ชั่นมันc 1+1เป็นเพียงสิ่งที่ฉันต้องการ! :-) (คำตอบได้รับการอัปเดตเพื่อให้ชัดเจนยิ่งขึ้น)
Fabby

และถ้าคุณทำจุดลอยตัว: c 'scale = 2; 17/3 '(หรือดีกว่ามีการปรับสเกลตัวแปรที่ใช้ภายในฟังก์ชั่น' c () 'และกำหนดค่าเมื่อใดก็ตามที่คุณต้องมีตัวเลขทศนิยม n ค่าเริ่มต้นคือ 0)
Olivier Dulac

1
ค่อนข้างใช้bc -lในการกำหนดฟังก์ชั่นเพื่อให้มีความสามารถมากขึ้น
ไอแซค

22

เปลือก

ง่ายขจัดตะกรันใน CLI เป็น CLI (เชลล์) ตัวเอง (ถ้าIFSเป็นค่าเริ่มต้น):

$ echo $(( 22 + 333 ))
355

สามารถเว้นช่องว่าง:

$ echo $((22*333))
7326

เนื่องจากเป็นส่วนหนึ่งของ POSIX เชลล์เกือบทั้งหมดมี และมีฟังก์ชันคณิตศาสตร์ภาษา C ส่วนใหญ่ (ยกเว้น zsh ที่มีลำดับความสำคัญแตกต่างกันตั้งค่า C_PRECEDENCES เพื่อคืนค่าเป็นค่าที่เข้ากันได้):

$ echo $((22*333^2))
7324

และเชลล์บางตัวมีไวยากรณ์คณิตศาสตร์ภาษา C ส่วนใหญ่ (รวมถึงเครื่องหมายจุลภาค):

$ echo $((a=22,b=333,c=a*b,c))
7326

แต่มันเป็นเพียงเลขจำนวนเต็มคณิตศาสตร์ (โดยปกติแล้วจะน้อยกว่า 2 63ในระบบปฏิบัติการปัจจุบัน) ในบางเชลล์:

$ echo $((1234/3))
411

$ zsh -c 'echo $((2**63))'
-9223372036854775808

เชลล์บางตัวสามารถทำคณิตศาสตร์แบบลอยได้:

$ ksh -c 'echo $((1234/3.0))'
411.333333333333333

$ ksh -c 'echo $((12345678901234567890123/3.0))'
4.11522630041152263e+21

หลีกเลี่ยง zsh (zcalc มีปัญหาที่คล้ายกัน):

$ zsh -c 'echo $((12345678901234567890123 + 1))'
zsh:1: number truncated after 22 digits: 12345678901234567890123 + 1
-1363962815083169259

ฉันแนะนำให้คุณหลีกเลี่ยง exprบางครั้งก็ต้องมีการหลบหนีที่แปลกประหลาด:

$ expr 22 \* 333
7326

ก่อนคริสต์ศักราช

ในระดับต่อไปคือ ( ยัง POSIX ) bc(ลูกพี่ลูกน้องของ RPNdc )

$ echo '22*333' | bc
7326

$ echo '22 333 * p' | dc
7326

dc เป็น POSIX แต่ได้ถูกลบออกในปี 2017

สั้นลงถ้าเชลล์ของคุณรองรับ:

$ bc <<<'22*333'
7326

หรือแม้กระทั่ง:

$ <<<'22*333' bc
7326

ทั้งคู่เป็นเครื่องคิดเลขที่มีความแม่นยำตามอำเภอใจพร้อมฟังก์ชั่นคณิตศาสตร์ภายใน:

$ bc <<<2^200
1606938044258990275541962092341162602522202993782792835301376

$ echo 's(3.1415/2)' | bc -l        # sine function
.99999999892691403749

awk

หลังจากเครื่องมือคำนวณพื้นฐานจริงๆคุณต้องขึ้นไปภาษาอื่น ๆ

$ awk "BEGIN {print (22*33)/7}"
103.714

$ perl -E "say 22*33/7"
103.714285714286

$ python3 -c "print(22*33/7)"
103.71428571428571

$ php -r 'echo 22*33/7,"\n";'
103.71428571429

ฟังก์ชัน

คุณสามารถกำหนดฟังก์ชั่นของตัวเลือกใด ๆ ด้านบน:

c () 
{ 
    local in="$(echo " $*" | sed -e 's/\[/(/g' -e 's/\]/)/g')";
    gawk -M -v PREC=201 -M 'BEGIN {printf("%.60g\n",'"${in-0}"')}' < /dev/null
}

และใช้:

$ c 22* 33 /7                   # spaces or not, it doesn't matter.
103.714285714285714285714285714285714285714285714285714285714

20

อ่านความคิดเห็นหน้านี้ฉันเห็นโปรแกรม UNIX / Linux ที่เรียกcalcว่าทำสิ่งที่คุณต้องการ หากใช้ Debian / Ubuntu / อนุพันธ์:

sudo apt-get install apcalc

จากนั้นคุณสามารถ:

calc 236-192

และถ้าคุณเพิ่มนามแฝงalias c='calc'ของคุณ.bashrcหรือ/etc/bash.bashrcมันก็จะกลายเป็น:

c 1+1

บนบรรทัดคำสั่ง


1
ไม่สมบูรณ์แบบ แต่ดีพอสำหรับการโหวต ความเข้าใจผิดได้รับการแก้ไขในการแชทและ downvote ลบออกโดยผู้ใช้อื่นลบคำตอบ (ด้อยกว่า) ของตัวเอง ... ;-)
Fabby


9

unitsโปรแกรมในขณะที่ไม่ได้มีเจตนาที่จะใช้เป็นเครื่องคิดเลขใช้งานได้จริงค่อนข้างดีเป็นหนึ่ง

$ units "236-192"
    Definition: 44
$ 

หากมีช่องว่างในการแสดงออกแล้วการแสดงออกจะต้องได้รับการคุ้มครองใบเสนอราคา
รองรับเลขชี้กำลังและการซ้อนของวงเล็บ


3
ก็หลากหลาย: units -t -d 10 "236GB - 192GB" GBเอาท์พุท44, units -t -d 15 "236GB - 192GB" bytesเอาท์พุท 44000000000, ฯลฯ
AGC

6

ดังที่ได้กล่าวไว้ในความคิดเห็นเพื่อตอบกลับก่อนหน้านี้เชลล์มาตรฐาน (ba) sh อนุญาตให้ประเมินนิพจน์ทางคณิตศาสตร์ภายใน $((...))ดวลจุดโทษช่วยให้การประเมินการแสดงออกทางคณิตศาสตร์ภายใน ฉันไม่สามารถตรวจสอบซ้ำได้ว่านี่เป็นส่วนหนึ่งของมาตรฐาน POSIX หรือไม่ แต่ฉันตรวจสอบแล้วว่ามันใช้ได้กับ Cygwin และ Mingw32 shell ด้วย

หากต้องการเห็นผลแน่นอนคุณจะต้องพิมพ์echo $((...))ซึ่งจะทำให้ตัวละครบางตัวมากกว่า bc(ใช้การโต้ตอบของ) อย่างไรก็ตามหากต้องการใช้ผลลัพธ์ในสคริปต์สิ่งนี้อาจสั้นกว่าbcโซลูชัน (ซึ่งอาจเป็นเช่น`echo ...|bc`)

เกี่ยวกับฟุ่มเฟื่อยที่bcคำสั่งอนุญาตให้ตัวเลือกในการ-qยับยั้งการส่งออกของ"GNU ปกติbcยินดีต้อนรับ"

ในที่สุดคำพูดเส้นขอบเล็กน้อยขอทราบว่าbcไม่ใช่เพียงเครื่องคิดเลข แต่เป็นภาษาโปรแกรมเต็มรูปแบบ (รวมถึงฟังก์ชั่นที่ผู้ใช้กำหนดในขณะที่ & สำหรับลูป ฯลฯ ฯลฯ ) ความจริงอีกข้อหนึ่งที่แนะนำให้ใช้ความสามารถทางคณิตศาสตร์ในตัวสำหรับการคำนวณอย่างง่ายมากกว่าโปรแกรมภายนอก ที่กล่าวว่าการแยกข้อมูลสำหรับจำนวนพาร์ทิชันที่กำหนด (s) และการจัดการกับ "เอ็ม", "G" ต่อท้ายเป็นคำถามเดิมดูเหมือนจะขออาจจะเรียกร้องให้มากกว่า(g)awkbc

แหล่งที่มา: https://www.gnu.org/software/bc/manual/html_mono/bc.html https://www.gnu.org/software/gawk/manual/html_node/Getting-Started.html


ขอบคุณ! คำตอบแรกที่ยอดเยี่ยม! +1
Fabby

2
$((...))เรียกว่าการขยายตัวแบบเลขคณิตและเป็นส่วนหนึ่งของ POSIX: pubs.opengroup.org/onlinepubs/9699919799/utilities/ … สำหรับฉันข้อเสียเปรียบที่ใหญ่ที่สุดของคุณลักษณะนี้ของ POSIX เชลล์คือมันรองรับเฉพาะเลขจำนวนเต็มคณิตศาสตร์ :(
pabouk

6

สิ่งที่ฉันทำใน zsh คือ:

$ <<< $(( 236 - 192 ))
44

ในทุบตีฉันต้องพูดถึงแมวอย่างชัดเจน:

$ cat <<< $(( 236 - 192 ))
44

หากฉันต้องการให้ผลลัพธ์มีตัวเลขเศษส่วน (ทำงานเป็น zsh ไม่ใช่แบบ bash) ฉันจะเพิ่มจุดฐานไปยังหนึ่งในตัวถูกดำเนินการ

$ <<< $(( 236 / 128 )) 
1
$ <<< $(( 236. / 128 ))
1.84375

7
echo $((236 - 128))ทำงานเกินไป ;-)
Stephen Kitt

หลีกเลี่ยงการ zsh -c 'print $((12345678901234567890123 + 1))' zsh:1: number truncated after 22 digits: 12345678901234567890123 + 1 -1363962815083169259zsh:
Isaac

@Isaac อย่างน้อย zsh บอกคุณว่ามันถูกตัดทอน ทุบตีเพียงแค่ให้คำตอบที่ไม่ถูกต้องโดยไม่ต้องบ่น
Stephen Kitt

@StephenKitt ปัญหาเกี่ยวกับ zsh ซับซ้อนกว่าการแสดงผลลัพธ์หนึ่งรายการ เปรียบเทียบ: และzsh -c 'print $((12345678901234567890123 + 1))' zsh -c 'print $((123456789012345678901 + 1))'มันถูกตัดทอนที่ความยาวต่างกันและให้ผลลัพธ์ตัวเลขที่แตกต่างกัน
Isaac

@StephenKitt Bash แทนทำตามคู่มือ (และภาษา C เกี่ยวกับโอเวอร์โฟลว์ของ int ที่ลงนามแล้ว) ไม่ใช่ว่าฉันชอบมันเป็นการส่วนตัว แต่มันก็บันทึกไว้เช่นนั้น ลองbash -c 'echo $((1<<63))'และ `` bash -c 'echo $ (((1 << 63) -1))' '
Isaac

6

โดยส่วนตัวแล้วฉันชอบlibqalculate (เวอร์ชั่นบรรทัดคำสั่งของQalculate )

$ qalc
> 236-192

  236 - 192 = 44

ในขณะที่อินเทอร์เฟซนั้นเรียบง่ายแน่นอน (lib) qalculate เป็นเครื่องคิดเลขที่ทรงพลังและเต็มเปี่ยม เช่น

> fibonacci(133) to hex

  fibonacci(133) = approx. 0x90540BE2616C26F81F876B9

> 100!

  factorial(100) = approx. 9.3326215E157

> sin(pi)

  sin(pi * radian) = 0

นอกจากนี้ยังทำสิ่งที่มีประโยชน์เช่นความสมบูรณ์ของแท็บวงเล็บเปิด / ปิดเมื่อจำเป็นและพิมพ์การตีความของเคียวรี

> 18-2)/4

  (18 - 2) / 4 = 4

เพื่อออกผมก็กด+Ctrld

สำหรับการเข้าถึงที่รวดเร็วยิ่งขึ้นให้ตั้งค่าเป็นอย่างalias ca='qalc'อื่น


ฉันอ่าน TOC ของคู่มือแล้ว แต่ไม่พบอะไรเกี่ยวกับ CLI (+1 ในระหว่างนี้)
Fabby

1
ขอบคุณ @Fabby ฉันสับสนและส่วน CLI นั้นแตกต่างออกไปเล็กน้อย ฉันได้ปรับปรุงคำตอบเพื่อชี้แจง
Sparhawk

ฉันหวังว่าฉันจะโหวตคุณได้สองครั้ง! ;-)
Fabby

4

Python เปิดในแท็บอื่นหรือไม่

Python 3.6.3 (v3.6.3:2c5fed8, Oct  3 2017, 17:26:49) [MSC v.1900 32 bit (Intel)] on 
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> 3+3
6
>>>

ไม่ไม่ใช่จริงๆ แต่เป็นความคิดที่เรียบร้อย! :-) +1
Fabby

PowerShell ยังสามารถทำสิ่งเดียวกัน
phuclv

1
@phuclv ใช่ แต่ไม่มีใครชอบ PS
Dev

3
@Dev ตันคน Unix รัก PS
phuclv

2

dc -e '236 192-p'

... แน่นอนถ้าคุณไม่คุ้นเคยdcและคุณต้องการมากกว่าการลบสองตัวเลขคุณจะใช้เวลามากขึ้นในการค้นหาวิธีใช้dc(และอาจใช้RPNโดยทั่วไป) มากกว่าที่คุณจะประหยัดด้วยวิธีการที่คุ้นเคยมากกว่า


ใช่ใช้เวลาดูโต๊ะเครื่องคิดเลข 3 นาทีและรู้ว่าไม่ใช่สำหรับฉัน: ฉันเป็น TI ไม่ใช่นักเรียน HP
Fabby

2

หากคุณมีการติดตั้งการไล่ระดับแล้วคุณมี Groovy ...

หากเส้นทางของ groovy ถูกต้องคุณควรจะสามารถใช้:

groovy -e "println 1+1"

นี่อาจดูเหมือนซ้ำซ้อนกับตัวอย่างอื่นทั้งหมด แต่:

  • Groovy เป็นภาษาที่ทรงพลัง
  • อาจเป็นการสนับสนุนห้องสมุดที่ดีที่สุด
  • ฟังก์ชันทางคณิตศาสตร์ที่ทรงพลังและเรียบง่าย (เช่นคณิตศาสตร์ที่มีความแม่นยำโดยพลการ)
  • ใช้ stdout ที่เปลี่ยนเส้นทางได้สำหรับเอาท์พุตดังนั้นจึงมีความยืดหยุ่นอย่างน่าอัศจรรย์

หากคุณไม่ได้ติดตั้ง java อาจจะไม่คุ้มค่าที่จะติดตั้ง groovy & java - เป็นเพียงตัวเลือกถ้า Groovy พร้อมใช้งานแล้ว


ไม่ไม่ใช่จริงๆ แต่เป็นความคิดที่เรียบร้อย! :-) +1
Fabby

2

คุณได้ลองconcalc แล้วหรือยัง?

คำอธิบาย: console calculator concalc เป็นเครื่องคิดเลขสำหรับคอนโซล Linux มันเป็นเพียง parser-algorithm ของ extcalc ที่บรรจุในโปรแกรมคอนโซลอย่างง่าย คุณสามารถใช้มันหากคุณต้องการเครื่องคิดเลขในเปลือกของคุณ concalc ยังสามารถเรียกใช้สคริปต์ที่เขียนด้วยภาษาการเขียนโปรแกรม C-like

$ concalc 1+1
2
$ concalc sqrt2
1.41421356237309505

ติดตั้งด้วย:

sudo apt-get install concalc

1
พิสูจน์ ... Graag gedaan ... :-D
Fabby

2

ก่อนโพสต์คำตอบที่ยอดเยี่ยมอื่นใดฉันโพสต์ลงเอยด้วยการสร้างสคริปต์/usr/local/bin/cที่มี:

#!/bin/sh
IFS=' '               # to be on the safe side, some shells fail to reset IFS.
if [ "$#" -eq 0 ];  then
    echo "$(basename "$0"): a (very) simple calculator."
    echo "type $(basename "$0") expression to evaluate (uses bc internally)"
fi

printf '%s\n' "$*" | bc -l  # safe for most shells
                            # we may use 'bc -l <<<"$*"` for ksh, bash, zsh

ดังนั้น: c 1+1ผลผลิตพิมพ์2! :-)

หมายเหตุ 1:ฉันใช้cเพราะคำสั่งนั้นไม่มีอยู่ในระบบ Unix ใด ๆ ที่ฉันสามารถหาได้ หากคุณมีนามแฝงว่าคอมไพเลอร์ของคุณให้ใช้สิ่งอื่นที่สั้นและคุณไม่ได้ใช้
หมายเหตุ 2: แหล่งที่มา


1
(1) ตัดสินใจใช้echo "$*" | bc -lเป็น shebang ที่คุณเคยใช้/bin/shและฉันไม่รู้ว่าคุณมี ksh / bash / zsh หรือไม่ (2) โปรดทราบว่าคุณอาจเปลี่ยนมาตราส่วนเพื่อคำนวณคือคุณใช้งาน `c 'scale = 60; 777/333' หวังว่ามันจะช่วย @Fabby
Isaac

1

หากติดตั้งไพ ธ อนคุณสามารถดำเนินการทางคณิตศาสตร์ได้มากมายผ่านบรรทัดคำสั่ง ฉันพยายามให้ตัวอย่างด้านล่าง

ฉันได้ใช้คุณสามารถใช้python3 pythonความแตกต่างระหว่างpythonและpython3เกิดขึ้นเมื่อแบ่งออก (เศษส่วน) การดำเนินงานที่เกิดขึ้นเพื่อหลีกเลี่ยงปัญหาดูด้านล่างหลาม VS python3

หมายเหตุ: ล่าสุด linux dist ทั้งหมดมาพร้อมกับ Python 2.7 และ Python 3.5 ตามค่าเริ่มต้น ในกรณีที่จำเป็นต้องใช้ในการติดตั้งหลามคลิกที่นี่

เพิ่มลบคูณและหาร:

$ python3 <<< "print(12+3)"
15
$ python3 <<< "print(12-3)"
9
$ python3 <<< "print(12*3)"
36
$ python3 <<< "print(12/3)"
4

โมดูลัส - ส่วนที่เหลือของส่วน:

$ python3 <<< "print(14%3)"
2

หมวดชั้น:

$ python3 <<< "print(14//3)"
4

เลขชี้กำลัง - x กำลังของ y (x ^ y):

$ python3 <<< "print(3**2)"
9

รากที่สอง (เช่น: √4 = 2):

$ python3 <<< "print(4**0.5)"
2

ส่วนวิทยาศาสตร์เพิ่มเติมคุณจะต้องนำเข้าห้องสมุดคณิตศาสตร์ Ex:

ลอการิทึมธรรมชาติของ x = log (x):

$ python3 <<< "import math; print(math.log(4))"
1.386294361119890e6

ลอการิทึมฐาน 10 ของ x = log10 (x):

$ python3 <<< "import math; print(math.log10(10))"
1.0

แฟคทอเรียล (เช่น: 3! = 3.2.1 = 6):

$ python3 <<< "import math; print(math.factorial(3))"
6

ตรีโกณมิติsin(x)- cos(x),, tan(x):

$ python3 <<< "import math; print(math.sin(90))"
0.8939966636005579

เพิ่มเติม Fore ฟังก์ชันทางคณิตศาสตร์ที่เกี่ยวข้องกับการตรวจสอบที่นี่

pythonVs python3:

- สำหรับการแบ่ง: (ใช้ลอย):

$ python <<< "print(10.0/3)"
3.33333333333

-แทน

$ python <<< "print(10/3)"
3

นอกจากนี้คุณสามารถใช้เทอร์มินัลโดยตรง:

$ python3
Python 3.6.8 (default, Jan 14 2019, 11:02:34) 
[GCC 8.0.1 20180414 (experimental) [trunk revision 259383]] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> 1+3
4
>>> import math
>>> math.log10(4)
0.6020599913279624
>>> math.sqrt(4)
2.0
>>> 

แค่นั้นแหละ. การเข้ารหัสที่มีความสุข!


0

อย่างใดอย่างหนึ่งหรือbcqalc


หากต้องการให้มีการbcปัดเศษเป็นสองหลักเสมอ: (การเรียกใช้ด้วย-lจะไม่สะดวกสำหรับเนื้อหาแบบวันต่อวัน)

แก้ไขของคุณ~/.bashrc:

alias bc="BC_ENV_ARGS=<(echo "scale=2") \bc"

เปิดเชลล์ใหม่และรันที่bcนั่น


-1

สร้างหนึ่งซับ:

$ c () { echo $(( ${1} )) }

ตอนนี้คุณสามารถใช้เลขจำนวนเต็มอย่างง่าย:

$ c 1+1
2

$ c 25*4
100

$ c 25*4-10
90

$ c 20*5/4
25

นี้จะกล่าวถึงแล้วในคำตอบของไอแซก
Stephen Kitt

@StephenKitt ใช่ฉันสนับสนุนคำตอบที่ละเอียดมากของ Isaac ฉันคิดว่าหนึ่งซับสรุปข้อมูลบางอย่างที่เขาโพสต์จะมีประโยชน์ การ${1}ใช้พารามิเตอร์นั้นไม่เหมือนกันสำหรับทุกคำตอบ
WinEunuuchs2Unix

2
ฉันขอแนะนำให้คุณพิจารณาเหตุผลที่คำตอบอื่น ๆ ไม่ได้ใช้${1};-)
Stephen Kitt
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.