system函数的详细使用

目录

函数接口

作用

返回值

测试代码

 参数

MODE命令

color命令


 

函数接口

_DCRTIMP int __cdecl system(

        _In_opt_z_ char const* _Command

);

system函数已经被收录在标准c库中,头文件为

作用

执行系统命令调用命令处理器来执行命令

如果命令是空指针,则该函数只检查是否有命令处理器可以被此函数使用。

命令非空则调用命令的效果取决于系统和库的实现,并可能导致程序以非标准的方式运行或终止。

补充:

执行 dos(windows系统) 或 shell(Linux/Unix系统) 命令,参数字符串command为命令名。另,在windows系统下参数字符串不区分大小写。

说明:在windows系统中,system函数直接在控制台调用一个command命令。 在Linux/Unix系统中,system函数会调用fork函数产生子进程,由子进程来执行command命令,命令执行完后随即返回原调用的进程

返回值

如果命令为空指针,如果命令处理器是可用的则该函数将返回一个非零值,如果不可用,则为零。

如果命令不是NULL指针,返回的值取决于系统和库的实现,但如果支持的话,通常期望它是被调用的命令返回的状态代码,通常是命令执行成功返回0,执行失败返回-1。

测试代码

 

/* system example : DIR */

#include       /* printf */

#include      /* 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;

}

system函数的详细使用_第1张图片

 参数

参数

功能

使用说明

ASSOC

显示或修改文件扩展名关联

ATTRIB

显示或更改文件属性

BREAK

设置或清除扩展式 CTRL+C 检查

BCDEDIT

设置启动数据库中的属性以控制启动加载

CACLS

显示或修改文件的访问控制列表(ACL)

CALL

从另一个批处理程序调用这一个

CD

显示当前目录的名称或将其更改

CHCP

显示或设置活动代码页数

CHDIR

显示当前目录的名称或将其更改

CHKDSK

检查磁盘并显示状态报告

CHKNTFS

显示或修改启动时间磁盘检查

CLS

清除屏幕

*

CMD

打开另一个 Windows 命令解释程序窗口

*

COLOR

设置默认控制台前景和背景颜色

system("color 0B");

COMP

比较两个或两套文件的内容

COMPACT

显示或更改 NTFS 分区上文件的压缩

CONVERT

将 FAT 卷转换成 NTFS 你不能转换当前驱动器

COPY

将至少一个文件复制到另一个位置

DATE

显示或设置日期

system("date /T");

后面加 /t 表示显示日期

DEL

删除至少一个文件

DIR

显示一个目录中的文件和子目录

DISKPART

显示或配置磁盘分区属性

DOSKEY

编辑命令行、撤回 Windows 命令并创建宏

DRIVERQUERY

显示当前设备驱动程序状态和属性

ECHO

显示消息,或将命令回显打开或关闭

ENDLOCAL

结束批文件中环境更改的本地化

ERASE

删除一个或多个文件

*

EXIT

退出 CMD.EXE 程序(命令解释程序)

*

FC

比较两个文件或两个文件集并显示它们之间的不同

*

FIND

在一个或多个文件中搜索一个文本字符串

*

FINDSTR

在多个文件中搜索字符串

*

FOR

为一组文件中的每个文件运行一个指定的命令

FORMAT

格式化磁盘,以便用于 Windows

FSUTIL

显示或配置文件系统属性

FTYPE

显示或修改在文件扩展名关联中使用的文件类型

GOTO

将 Windows 命令解释程序定向到批处理程序中某个带标签的行

GPRESULT

显示计算机或用户的组策略信息

GRAFTABL

使 Windows 在图形模式下显示扩展字符集

*

HELP

获取该表格的内容

ICACLS

显示、修改、备份或还原文件和目录的 ACL

IF

在批处理程序中执行有条件的处理操作

LABEL

创建、更改或删除磁盘的卷标

MD

创建一个目录

MKDIR

创建一个目录

MKLINK

创建符号链接和硬链接

MODE

查看与配置系统设备

system(mode);

MORE

逐屏显示输出

*

MOVE

将一个或多个文件从一个目录移动到另一个目录

OPENFILES

显示远程用户为了文件共享而打开的文件

PATH为

可执行文件显示或设置搜索路径

PAUSE

暂停批处理文件的处理并显示消息

POPD

还原通过 PUSHD 保存的当前目录的上一个值

PRINT

打印一个文本文件

PROMPT

更改 Windows 命令提示

PUSHD

保存当前目录,然后对其进行更改

RD

删除目录

RECOVER

从损坏的或有缺陷的磁盘中恢复可读信息

*

REM

记录批处理文件或 CONFIG.SYS 中的注释(批注)

REN

重命名文件

RENAME

重命名文件

REPLACE

替换文件

*

RMDIR

删除目录

ROBOCOPY

复制文件和目录树的高级实用工具

SET

显示、设置或删除 Windows 环境变量

SETLOCAL

开始本地化批处理文件中的环境更改

SC

显示或配置服务(后台进程)

SCHTASKS

安排在一台计算机上运行命令和程序

SHIFT

调整批处理文件中可替换参数的位置

SHUTDOWN

允许通过本地或远程方式正确关闭计算机

system(“shutdown -s –t 60”)60秒后关机

system("shutdown -a");取消关机

system("shutdown -p");立即关闭

system("shutdown -1");注销计算机

SORT

对输入排序

START

启动单独的窗口以运行指定的程序或命令

SUBST

将路径与驱动器号关联

SYSTEMINFO

显示计算机的特定属性和配置

TASKLIST

显示包括服务在内的所有当前运行的任务

TASKKILL

中止或停止正在运行的进程或应用程序

TIME

显示或设置系统时间

system("TIME /T");

后面加 /t 表示显示时间

TITLE

设置 CMD.EXE 会话的窗口标题

“TITLE 你想改成啥”

TREE

以图形方式显示驱动程序或路径的目录结构

“TREE D:”

TYPE

显示文本文件的内容

“TYPE D:\\文本.txt”

VER

显示 Windows 的版本

VERIFY

告诉 Windows 是否进行验证,以确保文件正确写入磁盘

VOL

显示磁盘卷标和序列号

XCOPY

复制文件和目录树

WMIC

在交互式命令 shell 中显示 WMI 信息

MODE命令

system(mode);

 system函数的详细使用_第2张图片

 

(936表示简体中文)

应用示例
  示例一:
  改变DOS窗口的尺寸:
  打开命令提示符cmd,键入mode con cols=100 lines=40则DOS窗口的尺寸将会变为40行100列的,cols最小值为13,lines最小值为1。在C语言中也可以通过system函数调用这个dos命令来实现这个功能。

示例二:
  显示代码页:
  代码页,通俗的说就是DOS中显示的语言。具体代码页可以查看代码页这个百科词条。
  比如,想让DOS下显示的语言为美式英语,则输入mode con cp select=437即可,输出为:

 system函数的详细使用_第3张图片

 

color命令

system("color 02"); 是表示黑背景、绿色前景(即字的颜色).颜色属性由两个十六进制数字指定 -- 第一个为背景,第二个则为前景。每个数字可以为以下任何值之一

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函数的详细使用_第4张图片 

 system函数的详细使用_第5张图片

 注意:一个程序中永远是最后一个system(“color xx”)起作用

你可能感兴趣的:(C精华,unix,linux,c++)