簡體   English   中英

GNU makefile中head,cat和awk的用途是什么

[英]what is the purpose of head, cat and awk in GNU makefile

我是Linux的新手,試圖了解遵循makefile語法的功能。 我知道諸如head或awk之類的不同命令,但無法確定以下腳本的作用。

頭-c $$(((0x100))/ dev / zero | 貓-$ <| xxd -g1 -c4 | awk'{print $$ 5 $$ 4 $$ 3 $$ 2}'> $ @

命令和開關的詳細說明將受到高度贊賞。

兩美元只是一個逃脫的美元符號

所以:

head -c $((0x100)) /dev/zero

0x100為“ 256”,因此這將從/dev/zero獲取前256個字節,從而產生無休止的NULL字符流 0x00

然后將其與第一個先決條件結合在一起 -是通過管道傳遞的stdin,並在該鏈接中說明了$< ,但這是一個makefile文件,而不是linux / shell文件)

 cat - $< 

然后將其通過管道傳輸到xxd

xxd -g1 -c4 

它將以十六進制形式輸出cat的結果,其中1位( -g1 )分隔八位位組,每行4個八位位組( -c4 )。 我可以想象這里的分隔符已經就位,所以awk可以做到這一點。

然后通過管道傳輸到awk

awk '{print $5$4$3$2}' > $@

按順序打印第5、4、3和2列,中間沒有字符,並將stdout重定向到目標規則$@ 文件名,這也是另一個makefile文件,不是linux / shell文件

我不知道為什么。

暫無
暫無

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

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