当前位置: 技术问答>linux和unix
高分求助tar解包问题
来源: 互联网 发布时间:2014-12-21
本文导语: 我的程序:(freebsd 下c程序) sprintf(cmd,"cd %s ; tar -czf nastest NASBackup.ini"); system(cmd); 建好的包nastest,解包后NASBackup.ini内容为空. 但是我在命令行下手工执行结果是对的,请教! | sprintf(cmd,"cd %s ;...
我的程序:(freebsd 下c程序)
sprintf(cmd,"cd %s ; tar -czf nastest NASBackup.ini");
system(cmd);
建好的包nastest,解包后NASBackup.ini内容为空.
但是我在命令行下手工执行结果是对的,请教!
sprintf(cmd,"cd %s ; tar -czf nastest NASBackup.ini");
system(cmd);
建好的包nastest,解包后NASBackup.ini内容为空.
但是我在命令行下手工执行结果是对的,请教!
|
sprintf(cmd,"cd %s ; tar -czf nastest NASBackup.ini");
少了参数?
我在自己机器上运行这个正确:
void main()
{
char cmd[80];
sprintf(cmd,"cd . ; tar -czf nastest NASBackup.ini");
system(cmd);
}
少了参数?
我在自己机器上运行这个正确:
void main()
{
char cmd[80];
sprintf(cmd,"cd . ; tar -czf nastest NASBackup.ini");
system(cmd);
}
|
该程sprintf(cmd,"cd %s ; tar cvzf nastest NASBackup.ini");实施
|
1)path应该为绝对路径,否则应该添加./ ../ ../../之类。
2)有的时候运行时路径变了,如web server下运行的cgi脚本,把webserver的路径作为根。
3)system函数不能够根据返回值判断命令执行是否成功,他只返回system函数是否成功。用man system可以看到有一个宏用来解析system的返回值,可惜我现在没有环境,帮你up。
2)有的时候运行时路径变了,如web server下运行的cgi脚本,把webserver的路径作为根。
3)system函数不能够根据返回值判断命令执行是否成功,他只返回system函数是否成功。用man system可以看到有一个宏用来解析system的返回值,可惜我现在没有环境,帮你up。