簡體   English   中英

Bash Awk 命令混淆

[英]Bash Awk command confusion

我正在檢查一段代碼,但我無法完全理解它:

var1=`awk -F , '{printf "%.0f\n", $1*17/1000}' $somefile`;

假設它從文件中接收到的數字是 1000,它將它乘以 17 再除以 1000,但在此之前,還有這個: "%.0f\\n"我知道其余的計算是如何進行的,但這部分令人困惑我。 據我了解,它正在計算某事物的一個小數並打印一個換行符。 一個完整的 awk 命令解釋坑的答案將不勝感激:D

它在計算后將小數點數設置為零(截斷數字)。 你可以在這里找到更多信息

您可以通過鍵入自己嘗試

awk -F, '{printf "%.0f\n", $1*17/1000}'

在命令行上,它將為每個輸入的行轉換您的輸入,但也許這會更直觀。 (Control-D 退出)

awk -F, '{printf "%.0f\n", $1}'

附: 請注意,這等效於整數格式 %d 或 %i(無小數點)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM