У меня есть следующая программа, ниже которой копируется весь текстовый файл, в котором вы вводите имя исходного файла и файла назначения. Мне нужно изменить мою программу, чтобы оценить команду Linux cp.Оценить команду копирования файла Linux в c
Моя команда subcopy
будет принимать в качестве параметра имя исходного файла а, имя файла в назначения и начала и конца линии линий исходного файла, которые будут скопированы в файл назначения , как в примере ниже:
subcopy.o Sourcefile.txt destinationfile.txt 100 200
линий 100 копируется - 200 от Sourcefile.txt до destinationfile.txt
Отредактировано: Я проделал всю тяжелую работу. Осталось выбрать количество строк, которые я хочу скопировать из одного файла в другой. Обратите внимание на пример, как это работает.
#include <stdio.h>
#include <stdlib.h>
void cp(char source_file[],char destination_file[],int lines_copy)
{
char ch;
FILE *source, *destination;
source = fopen(source_file, "r");
if(source == NULL)
{
printf("File name not found, make sure the source file exists and is ending at .txt\n");
exit(EXIT_FAILURE);
}
destination = fopen(destination_file, "w");
if(destination == NULL)
{
fclose(source);
printf("Press any key to exit...\n");
exit(EXIT_FAILURE);
}
while((ch = fgetc(source)) != EOF)
fputc(ch, destination);
printf("Copied lines %d from %s to %s \n",lines_copy,source_file,destination_file,".txt");
fclose(source);
fclose(destination);
}
int main()
{
char s[20];
char d[20];
int lines;
printf("-Enter the name of the source file ending in .txt\n-Enter the name of the destination file ending in .txt\n-Enter the number of lines you want to copy\n\n");
printf(">subcopy.o ");
gets(s);
printf("destination file-> ");
gets(d);
printf("Lines: ");
scanf("%d",&lines);
cp(s,d,lines);
return 0;
}
Поиск в Google «линукс копия команды файла» –
нормально, может быть, я не прав, я изменил название, чтобы скопировать команду –
спасибо за редактирования @Am_I_Helpful –