【发布时间】:2021-01-31 17:53:50
【问题描述】:
这里我只想创建 bin 文件夹的 tar 文件。我的 main.c 代码有位置,即 /home/amit/practice/datafill/main.c。 datafill 目录包含 bin、conf、config、data、lib 等文件夹。
有一个链接system("cd <path>") in a C program 但这并不能解决我的问题。通过将 2 个命令与 && 运算符结合使用,它仅从 bin 文件夹创建 bin.tar,但是当它被提取时,它包含完整路径链接 /home/amit/practice/datafill/bin/这是错误的。假设bin文件夹中有一个文件abc.txt。所以提取后,abc.txt 的路径应该只有 bin/abc.txt,而不是 /home/amit/practice/datafill/bin/abc.txt
#include<stdio.h>
#include<unistd.h>
int main(void)
{
char Cmd[256];
/*Go to specific directory && create tar file*/
sprintf(Cmd,"cd /home/amit/practice/datafill/bin/ && sudo tar -cvf bin.tar *");
system(Cmd);
return 0;
}
【问题讨论】: