溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

如何快速上手Linux的size命令

發(fā)布時(shí)間:2022-02-19 11:35:53 來源:億速云 閱讀:173 作者:小新 欄目:開發(fā)技術(shù)

這篇文章主要介紹如何快速上手Linux的size命令,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!

size命令用于查看目標(biāo)文件、庫或可執(zhí)行文件中各段及其總和的大小,是 GNU 二進(jìn)制工具集 GNU Binutils 的一員。

如何快速上手Linux的size命令

Linux size 命令

size 命令基本上就是輸出指定輸入文件各段及其總和的大小。下面是該命令的語法:

size [-A|-B|--format=compatibility]
 [--help]
 [-d|-o|-x|--radix=number]
 [--common]
 [-t|--totals]
 [--target=bfdname] [-V|--version]
 [objfile...]

man 頁是這樣描述它的:

?

GNU 的 size 程序列出參數(shù)列表中各目標(biāo)文件或存檔庫文件的段大小 — 以及總大小。默認(rèn)情況下,對(duì)每個(gè)目標(biāo)文件或存檔庫中的每個(gè)模塊都會(huì)產(chǎn)生一行輸出。

objfile… 是待檢查的目標(biāo)文件。如果沒有指定,則默認(rèn)為文件 a.out。

下面是一些問答方式的案例,希望能讓你對(duì) size 命令有所了解。

Q1、如何使用 size 命令?

size 的基本用法很簡(jiǎn)單。你只需要將目標(biāo)文件/可執(zhí)行文件名稱作為輸入就行了。下面是一個(gè)例子:

size apl

該命令在我的系統(tǒng)中的輸出如下:

如何快速上手Linux的size命令

How to use size command

前三部分的內(nèi)容是文本段、數(shù)據(jù)段和 bss 段及其相應(yīng)的大小。然后是十進(jìn)制格式和十六進(jìn)制格式的總大小。最后是文件名。

Q2、如何切換不同的輸出格式?

根據(jù) man 頁的說法,size 的默認(rèn)輸出格式類似于 Berkeley 的格式。然而,如果你想的話,你也可以使用 System V 規(guī)范。要做到這一點(diǎn),你可以使用 –format 選項(xiàng)加上 SysV 值。

size apl --``format``=SysV

下面是它的輸出:

如何快速上手Linux的size命令 

How to switch between different output formats

Q3、如何切換使用其他的單位?

默認(rèn)情況下,段的大小是以十進(jìn)制的方式來展示。然而,如果你想的話,也可以使用八進(jìn)制或十六進(jìn)制來表示。對(duì)應(yīng)的命令行參數(shù)分別為 o 和 -x。

如何快速上手Linux的size命令 

How to switch between different size units

關(guān)于這些參數(shù),man 頁是這么說的:

?

-d

-o

-x

–radix=number

使用這幾個(gè)選項(xiàng),你可以讓各個(gè)段的大小以十進(jìn)制(-d 或 –radix 10)、八進(jìn)制(-o 或 –radix 8);或十六進(jìn)制(-x 或 –radix 16)數(shù)字的格式顯示。–radix number 只支持三個(gè)數(shù)值參數(shù)(8、 10、 16)??偣泊笮∫詢煞N進(jìn)制給出; -d 或 -x 的十進(jìn)制和十六進(jìn)制輸出,或 -o 的八進(jìn)制和十六進(jìn)制輸出。

Q4、如何讓 size 命令顯示所有對(duì)象文件的總大???

如果你用 size 一次性查找多個(gè)文件的段大小,則通過使用 -t 選項(xiàng)還可以讓它顯示各列值的總和。

size -t [file1] [file2] ...

下面是該命令的執(zhí)行的截屏:

如何快速上手Linux的size命令

How to make size command show totals of all object files

-t 選項(xiàng)讓它多加了最后那一行。

Q5、如何讓 size 輸出每個(gè)文件中公共符號(hào)的總大???

若你為 size 提供多個(gè)輸入文件作為參數(shù),而且想讓它顯示每個(gè)文件中公共符號(hào)(指 common segment 中的 symbol)的大小,則你可以帶上 –common 選項(xiàng)。

size --common [file1] [file2] ...

另外需要指出的是,當(dāng)使用 Berkeley 格式時(shí),這些公共符號(hào)的大小被納入了 bss 大小中。

Q6、還有什么其他的選項(xiàng)?

除了剛才提到的那些選項(xiàng)外,size 還有一些一般性的命令行選項(xiàng),比如 v (顯示版本信息)和 -h (可選參數(shù)和選項(xiàng)的匯總)。

如何快速上手Linux的size命令

What are the other available command line options

除此之外,你也可以使用 @file 選項(xiàng)來讓 size 從文件中讀取命令行選項(xiàng)。下面是詳細(xì)的相關(guān)說明:

?

讀出來的選項(xiàng)會(huì)插入并替代原來的 @file 選項(xiàng)。若文件不存在或著無法讀取,則該選項(xiàng)不會(huì)被替換,而是會(huì)以字面意義來解釋該選項(xiàng)。文件中的選項(xiàng)以空格分隔。當(dāng)選項(xiàng)中要包含空格時(shí)需要用單引號(hào)或雙引號(hào)將整個(gè)選項(xiàng)包起來。通過在字符前面添加一個(gè)反斜杠可以將任何字符(包括反斜杠本身)納入到選項(xiàng)中。文件本身也能包含其他的 @file 選項(xiàng);任何這樣的選項(xiàng)都會(huì)被遞歸處理。

以上是“如何快速上手Linux的size命令”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI