Задание 4: файлы
Требуемые условия завершения
Открыто с: суббота, 5 марта 2016, 11:00
Срок сдачи: четверг, 31 марта 2016, 15:30
Задание
Написать программу на языке С, которая через аргументы командной строки получает имя файла (заданный путем), и новый путь, и копирует этот файл в новое место. Программа должна обрабатывать ошибки.
Дополнение к заданию (опционально)
- Если путь к файлу не существует, нужно создать соответствующие каталоги.
- Выводить информацию о файле (размеры, владелец, время создания и т.д.)
Полезные функции
Переменная
errno
- код последней ошибки
Функция
void perror( const char *string );
- вывод текста об ошибке
Функции
int open(const char *pathname, int flags); int open(const char *pathname, int flags, mode_t mode); int creat(const char *pathname, mode_t mode);
- открытие файла
Функция
int close(int fd);
- закрытие файла
Функция
ssize_t read(int fd, void *buf, size_t count);
- чтение из файла
Функция
ssize_t write(int fd, const void *buf, size_t count);
- запись в файл
Функция
off_t lseek(int fd, off_t offset, int whence);
- перемещение в файле
Функция
int mkdir(const char *pathname, mode_t mode);
- создание каталога
Функция
int rmdir(const char *pathname);
- удаление каталога
Функция
int remove(const char *pathname);
- удаление файла или каталога
Функция
int unlink(const char *pathname);
- удаление файла
Функция
int rename(const char *oldpath, const char *newpath);
- переименование или перемещение файла.
Функция
int stat(const char *path, struct stat *buf);
-получение информации о файле
Полезные заголовки
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <unistd.h>