- 论坛徽章:
- 0
|
原帖由 liuchang1881 于 2006-8-18 19:11 发表
我想在c语言中调用mount命令,可不可以采用下面的语句呢。
char *tmp;
sprintf(tmp,"/bin/mount -t vfat %s /mnt/usb",dev);
system(tmp);
其中dev是/dev/sda1。
这样可以实现吗?
>>
>>
>>答案是可以。参考如下:
>>
>>
NAME
system - execute a shell command
SYNOPSIS
#include <stdlib.h>
int system(const char *string);
DESCRIPTION
system() executes a command specified in string by calling /bin/sh -c
string, and returns after the command has been completed. During exe‐
cution of the command, SIGCHLD will be blocked, and SIGINT and SIGQUIT
will be ignored.
RETURN VALUE
The value returned is -1 on error (e.g. fork failed), and the return
status of the command otherwise. This latter return status is in the
format specified in wait(2). Thus, the exit code of the command will
be WEXITSTATUS(status). In case /bin/sh could not be executed, the
exit status will be that of a command that does exit(127).
If the value of string is NULL, system() returns nonzero if the shell
is available, and zero if not.
system() does not affect the wait status of any other children. |
|