obj文件,也就是常說的.o文件
成都創新互聯主營臺安網站建設的網絡公司,主營網站建設方案,重慶APP軟件開發,臺安h5重慶小程序開發搭建,臺安網站營銷推廣歡迎臺安等地區企業咨詢
比如下面的指令會產生app.o文件
]$gcc -c app.c
這個是從源代碼變成obj文件,這個過程叫編譯。
如果app.c里面有main函數,又不依賴其他庫文件,那么下面的指令生成執行文件
]$gcc -o app app.o
這就是從.o文件變成執行文件,這個過程叫鏈接。
ALT快捷鍵在WIN下Xshell不可用
ctrl + a 光標切換到命令行行首
ctrl + e 光標切換到命令行末尾
ctrl + l 清屏 等同于 clear
ctrl + u 清除剪切光標之前的內容
ctrl + k 清楚剪切光標之后的內容
ctrl + w 清除剪切光標之前的一個word
alt + d 清除剪切光標之后的一個word
ctrl + y 粘貼剛才刪除字符
ctrl + h 向行首刪除一個字符
ctrl + d 向行尾刪除一個字符,空行時等于 exit 和 logout
ctrl + _ 恢復剛操作的命令 xshell無法使用
ctrl + b 光標向行首移動一個字符 ( backwards )
ctrl + f 光標向行尾移動一個字符( forwards )
ctrl + ← 光標向行首移動一個word
ctrl + → 光標向行尾移動一個word
ctrl + r 歷史命令中查找 (關鍵字可用)
ctrl + z 轉入后臺運行
history 10 顯示最近使用過的10個命令
!! 執行前一個命令
! + 字符 執行前一個以“字符”開頭的命令
! + Num 執行對應行號的命令
! + ? abc 執行前一個包含abc的命令
! -n 執行n個命令之前的那個命令
!* 調用上一條命令的所有參數
!$ 調用上一條命令的最后一個參數
!-: 調用上一條命令除了最后一個參數的部分
ALT + num + . 調用上一條命令中任意一個部分
!!:gs/$1/$2 替換上一條命令中所有$1為$2
!!:gs^$1^$2 替換上一條命令中第一個$1為$2
Linux 使用jstat命令查看jvm的GC情況
命令格式
jstat命令命令格式:
jstat [Options] vmid[interval] [count]
參數說明:
Options,選項,我們一般使用 -gcutil 查看gc情況
vmid
,VM的進程號,即當前運行的java進程號
interval
,間隔時間,單位為秒或者毫秒
count
,打印次數,如果缺省則打印無數次
示例說明
示例
通常運行命令如下:
jstat -gc 12538 5000
即會每5秒一次顯示進程號為12538的java進成的GC情況,
顯示內容如下圖:
結果說明
S0C:年輕代中第一個survivor(幸存區)的容量 (字節)
S1C
:年輕代中第二個survivor(幸存區)的容量 (字節)
S0U
:年輕代中第一個survivor(幸存區)目前已使用空間 (字節)
S1U
:年輕代中第二個survivor(幸存區)目前已使用空間 (字節)
EC
:年輕代中Eden(伊甸園)的容量 (字節)
EU
:年輕代中Eden(伊甸園)目前已使用空間 (字節)
OC
:Old代的容量 (字節)
OU
:Old代目前已使用空間 (字節)
PC
:Perm(持久代)的容量 (字節)
PU
:Perm(持久代)目前已使用空間 (字節)
YGC
:從應用程序啟動到采樣時年輕代中gc次數
YGCT
:從應用程序啟動到采樣時年輕代中gc所用時間(s)
FGC
:從應用程序啟動到采樣時old代(全gc)gc次數
FGCT
:從應用程序啟動到采樣時old代(全gc)gc所用時間(s)
GCT
:從應用程序啟動到采樣時gc用的總時間(s)
NGCMN
:年輕代(young)中初始化(最小)的大小 (字節)
NGCMX
:年輕代(young)的最大容量 (字節)
NGC
:年輕代(young)中當前的容量 (字節)
OGCMN
:old代中初始化(最小)的大小 (字節)
OGCMX
:old代的最大容量 (字節)
OGC
:old代當前新生成的容量 (字節)
PGCMN
:perm代中初始化(最小)的大小 (字節)
PGCMX
:perm代的最大容量 (字節)
PGC
:perm代當前新生成的容量 (字節)
S0
:年輕代中第一個survivor(幸存區)已使用的占當前容量百分比
S1
:年輕代中第二個survivor(幸存區)已使用的占當前容量百分比
E
:年輕代中Eden(伊甸園)已使用的占當前容量百分比
O
:old代已使用的占當前容量百分比
P
:perm代已使用的占當前容量百分比
S0CMX
:年輕代中第一個survivor(幸存區)的最大容量 (字節)
S1CMX
:年輕代中第二個survivor(幸存區)的最大容量 (字節)
ECMX
:年輕代中Eden(伊甸園)的最大容量 (字節)
DSS
:當前需要survivor(幸存區)的容量 (字節)(Eden區已滿)
TT
: 持有次數限制
MTT
: 最大持有次數限制
Linux編程中在命令行啟動另一個可執行文件或調用命令用system函數最簡單了,這個函數原理是在你編寫的那個程序的內部啟動另一個程序或命令,從而創建一個新進程,并等待這個進程執行完畢退出。如果正常執行,system函數將返回被執行程序或命令的退出碼;如果無法運行這個程序或命令,將返回錯誤代碼127;如果是其他錯誤,返回-1。這個函數的原型是:
#include stdlib.h
int system(const char *string);
參數string是將要執行的程序文件名或路徑,如果是啟動一個命令就是一個命令字符串。
還有一種執行外部程序的方法是exec系列函數,一般是在fork的子進程里面調用exec系列函數,那主進程里直接調用exec系列不行嗎,為什么要fork再在子進程里調用呢?因為exec系列的函數(包括execl函數)都是將當前進程替換成新進程,也就是說新進程啟動后原來的進程就不存在了,exec系列函數后面的那些代碼就不會再執行了。如果你不放在fork子進程里面,那主進程在執行execl函數后就完全不存在了,所以exec系列函數的使用都是先fork然后在子進程里面調用。因為exec系列函數都要使用fork調用,所以我一般是用system函數。
名稱欄目:linux命令行調用gc,linux命令用法
網站地址:http://m.kartarina.com/article42/heisec.html
成都網站建設公司_創新互聯,為您提供全網營銷推廣、自適應網站、網站建設、網頁設計公司、網站收錄、移動網站建設
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯