Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Lập Trình Bash

Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết

Trong bài viết này, chúng tôi sẽ chỉ cho bạn nhiều cách hữu ích khác nhau để thực hiện số học trong thiết bị đầu cuối Linux. Đến cuối bài viết này, bạn sẽ tìm hiểu các cách thực tế cơ bản khác nhau để thực hiện các phép tính toán học trong dòng lệnh.

Hãy bắt đầu nào!

1. Sử dụng Bash Shell

Cách đầu tiên và dễ dàng nhất để thực hiện phép toán cơ bản trên Linux CLI là sử dụng dấu ngoặc đơn kép. Dưới đây là một số ví dụ trong đó chúng tôi sử dụng các giá trị được lưu trữ trong biến:

$ ADD=$(( 1 + 2 ))
$ echo $ADD
$ MUL=$(( $ADD * 5 ))
$ echo $MUL
$ SUB=$(( $MUL - 5 ))
$ echo $SUB
$ DIV=$(( $SUB / 2 ))
$ echo $DIV
$ MOD=$(( $DIV % 2 ))
$ echo $MOD
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Số học trong Linux Bash Shell

2. Sử dụng lệnh expr

Lệnh expr đánh giá các biểu thức và in giá trị của biểu thức được cung cấp ra đầu ra tiêu chuẩn. Chúng ta sẽ xem xét các cách sử dụng expr khác nhau để thực hiện các phép toán đơn giản, so sánh, tăng giá trị của một biến và tìm độ dài của một chuỗi.

Sau đây là một số ví dụ về thực hiện các phép tính đơn giản bằng lệnh expr . Lưu ý rằng nhiều toán tử cần phải được thoát hoặc trích dẫn cho shell, ví dụ như * toán tử (chúng ta sẽ xem xét kỹ hơn ở phần so sánh các biểu thức).

$ expr 3 + 5
$ expr 15 % 3
$ expr 5 \* 3
$ expr 5 – 3
$ expr 20 / 4
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Số học cơ bản sử dụng lệnh expr trong Linux

Tiếp theo, chúng tôi sẽ đề cập đến cách so sánh. Khi một biểu thức được đánh giá là sai, expr sẽ in giá trị 0 , nếu không nó sẽ in 1 .

Hãy xem một số ví dụ:

$ expr 5 = 3
$ expr 5 = 5
$ expr 8 != 5
$ expr 8 \> 5
$ expr 8 \< 5
$ expr 8 \<= 5
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết So sánh các biểu thức số học trong Linux

Bạn cũng có thể sử dụng expr lệnh tăng giá trị của biến Hãy xem ví dụ sau (theo cách tương tự, bạn cũng có thể giảm giá trị của một biến).

$ NUM=$(( 1 + 2))
$ echo $NUM
$ NUM=$(expr $NUM + 2)
$ echo $NUM
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Giá trị gia tăng của một biến

Chúng ta cũng hãy xem cách tìm độ dài của chuỗi bằng cách sử dụng:

$ expr length "This is Tecmint.com"
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Tìm độ dài của chuỗi

Để biết thêm thông tin, đặc biệt là về ý nghĩa của các toán tử trên, hãy xem expr trang người đàn ông:

$ man expr

3. Sử dụng lệnh bc

bc (Máy tính cơ bản) là tiện ích dòng lệnh cung cấp tất cả các tính năng mà bạn mong đợi từ một máy tính khoa học hoặc tài chính đơn giản. Nó đặc biệt hữu ích khi làm toán dấu phẩy động.

Nếu lệnh bc chưa được cài đặt, bạn có thể cài đặt nó bằng cách sử dụng:

$ sudo apt install bc #Debian/Ubuntu
$ sudo yum install bc #RHEL/CentOS
$ sudo dnf install bc #Fedora 22+

Sau khi cài đặt, bạn có thể chạy nó ở chế độ tương tác hoặc không tương tác bằng cách chuyển đối số cho nó - chúng ta sẽ xem xét cả hai trường hợp. Để chạy nó một cách tương tác, hãy gõ lệnh bc trên dấu nhắc lệnh và bắt đầu thực hiện một số phép toán như minh họa.

$ bc 
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Bắt đầu bc ở Chế độ không tương tác

Các ví dụ sau đây cho thấy cách sử dụng bc không tương tác trên dòng lệnh.

$ echo '3+5' | bc
$ echo '15 % 2' | bc
$ echo '15 / 2' | bc
$ echo '(6 * 2) - 5' | bc
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Làm toán bằng bc trong Linux

-l cờ được sử dụng theo tỷ lệ mặc định (các chữ số sau dấu thập phân) đến 20 , ví dụ:

$ echo '12/5 | bc'
$ echo '12/5 | bc -l'
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Làm toán với số nổi

4. Sử dụng lệnh Awk

Awk là một trong những chương trình xử lý văn bản nổi bật nhất trong GNU/Linux. Nó hỗ trợ các toán tử số học cộng, trừ, nhân, chia và mô đun. Nó cũng hữu ích để làm toán dấu phẩy động.

Bạn có thể sử dụng nó để làm các phép toán cơ bản như hình.

$ awk 'BEGIN { a = 6; b = 2; print "(a + b) = ", (a + b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a - b) = ", (a - b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a * b) = ", (a * b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a / b) = ", (a / b) }'
$ awk 'BEGIN { a = 6; b = 2; print "(a % b) = ", (a % b) }'
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Làm toán cơ bản bằng lệnh Awk

Nếu bạn chưa quen với Awk , chúng tôi có một loạt hướng dẫn đầy đủ để giúp bạn bắt đầu tìm hiểu:Tìm hiểu Công cụ xử lý văn bản Awk.

5. Sử dụng lệnh hệ số

Lệnh nhân tố được sử dụng để phân tách một số nguyên thành thừa số nguyên tố. Ví dụ:

$ factor 10
$ factor 127
$ factor 222
$ factor 110 
Master Linux Terminal Arithmetic:5 kỹ thuật cần thiết Phân tích một số trong Linux

Thế thôi! Trong bài viết này, chúng tôi đã giải thích nhiều cách hữu ích khác nhau để thực hiện số học trong thiết bị đầu cuối Linux. Vui lòng đặt bất kỳ câu hỏi nào hoặc chia sẻ suy nghĩ của bạn về bài viết này thông qua biểu mẫu phản hồi bên dưới.