這裏我在linux下的代碼中使用。 在系統函數中使用cp命令。什麼系統函數和cp命令在C/Linux中返回
我知道系統函數它會返回0 if命令成功執行,否則它會返回錯誤代碼。
如果這裏我用正確的源和目標路徑比我得到的輸出喜歡這個
Number == 0
如果我給錯了源和目標路徑比我得到
cp: cannot create regular file `/home/sam/test/test': No such file or directory
Number == 256
cp: cannot stat `/home/sam/main/test2/test': Not a directory
Number == 256
在這裏,我想知道錯誤代碼cp
命令什麼cp命令在這裏返回。
我的問題是這裏
1 System function return error code of cp command?
2 Can i get error code of cp command from source code of cp command?
3 i want to handle all types of error in this cp command.
代碼:
#include <stdlib.h>
#include <stdio.h>
void main()
{
int a;
a = system("cp /home/sam/main/test /home/sam");
printf("Number == %d\n",a);
}
所以,任何機構,請給我解釋一下這一切
請停止使用無效的主要()。 main()函數應該返回int。 (如果cp或sh的創建者會使用'void main()',會發生什麼?) – wildplasser 2012-03-21 11:19:30
爲什麼不使用mmap()或open()/ read()/ write()來複制文件而不是使用系統()執行cp命令? – dAm2K 2012-03-21 13:10:17