網(wǎng)站首頁 編程語言 正文
函數(shù)接口
_DCRTIMP int __cdecl system( _In_opt_z_ char const* _Command );
system函數(shù)已經(jīng)被收錄在標(biāo)準c庫中,頭文件為<stdlib.h>
作用
執(zhí)行系統(tǒng)命令調(diào)用命令處理器來執(zhí)行命令。
如果命令是空指針,則該函數(shù)只檢查是否有命令處理器可以被此函數(shù)使用。
命令非空則調(diào)用命令的效果取決于系統(tǒng)和庫的實現(xiàn),并可能導(dǎo)致程序以非標(biāo)準的方式運行或終止。
補充:
執(zhí)行 dos(windows系統(tǒng)) 或 shell(Linux/Unix系統(tǒng)) 命令,參數(shù)字符串command為命令名。另,在windows系統(tǒng)下參數(shù)字符串不區(qū)分大小寫。
說明:在windows系統(tǒng)中,system函數(shù)直接在控制臺調(diào)用一個command命令。 在Linux/Unix系統(tǒng)中,system函數(shù)會調(diào)用fork函數(shù)產(chǎn)生子進程,由子進程來執(zhí)行command命令,命令執(zhí)行完后隨即返回原調(diào)用的進程
返回值
如果命令為空指針,如果命令處理器是可用的則該函數(shù)將返回一個非零值,如果不可用,則為零。
如果命令不是NULL指針,返回的值取決于系統(tǒng)和庫的實現(xiàn),但如果支持的話,通常期望它是被調(diào)用的命令返回的狀態(tài)代碼,通常是命令執(zhí)行成功返回0,執(zhí)行失敗返回-1。
測試代碼
/* system example : DIR */ #include <stdio.h> /* printf */ #include <stdlib.h> /* system, NULL, EXIT_FAILURE */ int main() { int i; printf("Checking if processor is 可用的...?"); if (system(NULL)) puts("Ok"); else exit(EXIT_FAILURE); printf("Executing command DIR...\n"); i = system("dir"); printf("The value returned was: %d.\n", i); return 0; }
參數(shù)
參數(shù) | 功能 | 使用說明 |
---|---|---|
ASSOC | 顯示或修改文件擴展名關(guān)聯(lián) | |
ATTRIB | 顯示或更改文件屬性 | |
BREAK | 設(shè)置或清除擴展式 CTRL+C 檢查 | |
BCDEDIT | 設(shè)置啟動數(shù)據(jù)庫中的屬性以控制啟動加載 | |
CACLS | 顯示或修改文件的訪問控制列表(ACL) | |
CALL | 從另一個批處理程序調(diào)用這一個 | |
CD | 顯示當(dāng)前目錄的名稱或?qū)⑵涓?/td> | |
CHCP | 顯示或設(shè)置活動代碼頁數(shù) | |
CHDIR | 顯示當(dāng)前目錄的名稱或?qū)⑵涓?/td> | |
CHKDSK | 檢查磁盤并顯示狀態(tài)報告 | |
CHKNTFS | 顯示或修改啟動時間磁盤檢查 | |
CLS | 清除屏幕 | * |
CMD | 打開另一個 Windows 命令解釋程序窗口 | * |
COLOR | 設(shè)置默認控制臺前景和背景顏色 | system("color 0B"); |
COMP | 比較兩個或兩套文件的內(nèi)容 | |
COMPACT | 顯示或更改 NTFS 分區(qū)上文件的壓縮 | |
CONVERT | 將 FAT 卷轉(zhuǎn)換成 NTFS 你不能轉(zhuǎn)換當(dāng)前驅(qū)動器 | |
COPY | 將至少一個文件復(fù)制到另一個位置 | |
DATE | 顯示或設(shè)置日期 | system("date /T"); 后面加 /t 表示顯示日期 |
DEL | 刪除至少一個文件 | |
DIR | 顯示一個目錄中的文件和子目錄 | |
DISKPART | 顯示或配置磁盤分區(qū)屬性 | |
DOSKEY | 編輯命令行、撤回 Windows 命令并創(chuàng)建宏 | |
DRIVERQUERY | 顯示當(dāng)前設(shè)備驅(qū)動程序狀態(tài)和屬性 | |
ECHO | 顯示消息,或?qū)⒚罨仫@打開或關(guān)閉 | |
ENDLOCAL | 結(jié)束批文件中環(huán)境更改的本地化 | |
ERASE | 刪除一個或多個文件 | * |
EXIT | 退出 CMD.EXE 程序(命令解釋程序) | * |
FC | 比較兩個文件或兩個文件集并顯示它們之間的不同 | * |
FIND | 在一個或多個文件中搜索一個文本字符串 | * |
FINDSTR | 在多個文件中搜索字符串 | * |
FOR | 為一組文件中的每個文件運行一個指定的命令 | |
FORMAT | 格式化磁盤,以便用于 Windows | |
FSUTIL | 顯示或配置文件系統(tǒng)屬性 | |
FTYPE | 顯示或修改在文件擴展名關(guān)聯(lián)中使用的文件類型 | |
GOTO | 將 Windows 命令解釋程序定向到批處理程序中某個帶標(biāo)簽的行 | |
GPRESULT | 顯示計算機或用戶的組策略信息 | |
GRAFTABL | 使 Windows 在圖形模式下顯示擴展字符集 | * |
HELP | 獲取該表格的內(nèi)容 | |
ICACLS | 顯示、修改、備份或還原文件和目錄的 ACL | |
IF | 在批處理程序中執(zhí)行有條件的處理操作 | |
LABEL | 創(chuàng)建、更改或刪除磁盤的卷標(biāo) | |
MD | 創(chuàng)建一個目錄 | |
MKDIR | 創(chuàng)建一個目錄 | |
MKLINK | 創(chuàng)建符號鏈接和硬鏈接 | |
MODE | 查看與配置系統(tǒng)設(shè)備 | system(mode); |
MORE | 逐屏顯示輸出 | * |
MOVE | 將一個或多個文件從一個目錄移動到另一個目錄 | |
OPENFILES | 顯示遠程用戶為了文件共享而打開的文件 | |
PATH為 | 可執(zhí)行文件顯示或設(shè)置搜索路徑 | |
PAUSE | 暫停批處理文件的處理并顯示消息 | |
POPD | 還原通過 PUSHD 保存的當(dāng)前目錄的上一個值 | |
打印一個文本文件 | ||
PROMPT | 更改 Windows 命令提示 | |
PUSHD | 保存當(dāng)前目錄,然后對其進行更改 | |
RD | 刪除目錄 | |
RECOVER | 從損壞的或有缺陷的磁盤中恢復(fù)可讀信息 | * |
REM | 記錄批處理文件或 CONFIG.SYS 中的注釋(批注) | |
REN | 重命名文件 | |
RENAME | 重命名文件 | |
REPLACE | 替換文件 | * |
RMDIR | 刪除目錄 | |
ROBOCOPY | 復(fù)制文件和目錄樹的高級實用工具 | |
SET | 顯示、設(shè)置或刪除 Windows 環(huán)境變量 | |
SETLOCAL | 開始本地化批處理文件中的環(huán)境更改 | |
SC | 顯示或配置服務(wù)(后臺進程) | |
SCHTASKS | 安排在一臺計算機上運行命令和程序 | |
SHIFT | 調(diào)整批處理文件中可替換參數(shù)的位置 | |
SHUTDOWN | 允許通過本地或遠程方式正確關(guān)閉計算機 | system(“shutdown -s –t 60”)60秒后關(guān)機 system("shutdown -a");取消關(guān)機 system("shutdown -p");立即關(guān)閉 system("shutdown -1");注銷計算機 |
SORT | 對輸入排序 | |
START | 啟動單獨的窗口以運行指定的程序或命令 | |
SUBST | 將路徑與驅(qū)動器號關(guān)聯(lián) | |
SYSTEMINFO | 顯示計算機的特定屬性和配置 | |
TASKLIST | 顯示包括服務(wù)在內(nèi)的所有當(dāng)前運行的任務(wù) | |
TASKKILL | 中止或停止正在運行的進程或應(yīng)用程序 | |
TIME | 顯示或設(shè)置系統(tǒng)時間 | system("date /T"); 后面加 /t 表示顯示日期 |
TITLE | 設(shè)置 CMD.EXE 會話的窗口標(biāo)題 | “TITLE 你想改成啥” |
TREE | 以圖形方式顯示驅(qū)動程序或路徑的目錄結(jié)構(gòu) | “TREE D:” |
TYPE | 顯示文本文件的內(nèi)容 | “TYPE D:\\文本.txt” |
VER | 顯示 Windows 的版本 | |
VERIFY | 告訴 Windows 是否進行驗證,以確保文件正確寫入磁盤 | |
VOL | 顯示磁盤卷標(biāo)和序列號 | |
XCOPY | 復(fù)制文件和目錄樹 | |
WMIC | 在交互式命令 shell 中顯示 WMI 信息 |
MODE命令
system(mode);
(936表示簡體中文)
應(yīng)用示例
示例一:
改變DOS窗口的尺寸:
打開命令提示符cmd,鍵入mode con cols=100 lines=40
則DOS窗口的尺寸將會變?yōu)?0行100列的,cols最小值為13,lines最小值為1。在C語言中也可以通過system函數(shù)調(diào)用這個dos命令來實現(xiàn)這個功能。
示例二:
顯示代碼頁:
代碼頁,通俗的說就是DOS中顯示的語言。具體代碼頁可以查看代碼頁這個百科詞條。
比如,想讓DOS下顯示的語言為美式英語,則輸入mode con cp select=437
即可,輸出為:
color命令
system("color 02
"); 是表示黑背景、綠色前景
(即字的顏色).顏色屬性由兩個十六進制數(shù)字指定 -- 第一個為背景
,第二個則為前景
。每個數(shù)字可以為以下任何值之一
0 = 黑色? ? ? ?8 = 灰色
1 = 藍色? ? ? ?9 = 淡藍色
2 = 綠色? ? ? ?A = 淡綠色
3 = 湖藍色? ? ?B = 淡淺綠色
4 = 紅色? ? ? ?C = 淡紅色
5 = 紫色? ? ? ?D = 淡紫色
6 = 黃色? ? ? ?E = 淡黃色
7 = 白色? ? ? ?F = 亮白色
0 = black 8 = gray
1 = blue 9 = light blue
2 = green A = light green
3 = lake blue B = light green
4 = red C = light red
5 = purple D = lavender
6 = yellow E = light yellow
7 = white F = bright white
注意:一個程序中永遠是最后一個system(“color xx”)
起作用
原文鏈接:https://blog.csdn.net/qq_42591783/article/details/121685822
相關(guān)推薦
- 2022-08-27 關(guān)于pygame自定義窗口創(chuàng)建及相關(guān)操作指南_python
- 2023-03-26 WPF實現(xiàn)頁面的切換的示例代碼_C#教程
- 2022-08-26 Jquery實現(xiàn)下拉菜單案例_jquery
- 2022-03-15 azkaban.utils.UndefinedPropertyException: Missing
- 2022-06-18 C語言詳細講解#error與#line如何使用_C 語言
- 2022-09-14 Android?實現(xiàn)卡片堆疊錢包管理動畫效果_Android
- 2022-02-18 git忽略文件,.gitignore配置
- 2023-10-09 element-ui,tree樹形控件,通過接口返回數(shù)據(jù)判斷是否繼續(xù)拿子節(jié)點
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支