Перейти к основному содержанию
EDU-MMCS
Вы используете гостевой доступ (Вход)

2.1-4. Операционные системы

  1. В начало
  2. Курсы
  3. Весенний семестр
  4. Прикладная математика и информатика
  5. PM-OS-2016
  6. Модуль 2: Лабораторная 1
  7. Задание 4: файлы

Задание 4: файлы

Требуемые условия завершения
Открыто с: суббота, 5 марта 2016, 11:00
Срок сдачи: четверг, 31 марта 2016, 15:30

Задание

Написать программу на языке С, которая через аргументы командной строки получает имя файла (заданный путем), и новый путь, и копирует этот файл в новое место. Программа должна обрабатывать ошибки.

Дополнение к заданию (опционально)

  1. Если путь к файлу не существует, нужно создать соответствующие каталоги.
  2. Выводить информацию о файле (размеры, владелец, время создания и т.д.)

Полезные функции

  1. Переменная errno

    • код последней ошибки
  2. Функция

    void perror( const char *string );
    
    • вывод текста об ошибке
  3. Функции

    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);
    
    • открытие файла
  4. Функция

    int close(int fd);
    
    • закрытие файла
  5. Функция

    ssize_t read(int fd, void *buf, size_t count);
    
    • чтение из файла
  6. Функция

    ssize_t write(int fd, const void *buf, size_t count);
    
    • запись в файл
  7. Функция

    off_t lseek(int fd, off_t offset, int whence);
    
    • перемещение в файле
  8. Функция

    int mkdir(const char *pathname, mode_t mode);
    
    • создание каталога
  9. Функция

    int rmdir(const char *pathname);
    
    • удаление каталога
  10. Функция

    int remove(const char *pathname);
    
    • удаление файла или каталога
  11. Функция

    int unlink(const char *pathname);
    
    • удаление файла
  12. Функция

    int rename(const char *oldpath, const char *newpath);
    
    • переименование или перемещение файла.
  13. Функция

    int stat(const char *path, struct stat *buf);
    

    -получение информации о файле

Полезные заголовки

    #include <sys/types.h>
    #include <sys/stat.h>
    #include <fcntl.h>
    #include <unistd.h>
◄ Задание 3: запуск процессов
Планирование процессов ►
Пропустить Навигация
Навигация
  • В начало

    • Страницы сайта

      • Мои курсы

      • Теги

    • Мои курсы

    • Курсы

      • Весенний семестр

        • Прикладная математика и информатика

          • УМФ Т-2025

          • ИНС

          • МО ПМИ

          • ДВ 1.3 Ruby on Rails

          • Летняя практика 2к ТУ

          • ЦИТ

          • Летняя практика ИО

          • М С С

          • Advanced problems - 21

          • ЯП-2024/25 (2)

          • Дистанционная летняя практика 2 курс

          • PM-OS-2016

            • Общее

            • Модуль 1: Лабораторная 1

            • Введение в операционные системы

            • Модуль 1: Лабораторная 2

            • Процессы и многозадачность

            • Модуль 2: Лабораторная 1

              • ЗаданиеЗадание 3: запуск процессов

              • ЗаданиеЗадание 4: файлы

            • Многозадачность: планирование

            • IPC: Межпроцесное взаимодействие

            • Модуль 2: Лабораторная 2: Каналы и именованные каналы

            • Модуль 2: Лабораторная 3: Разделяемая память

            • Модуль 2: Лабораторная 4: Потоки

            • Доборы баллов

        • Фундаментальная информатика и ИТ

        • Математика, механика

        • Педагогическое образование

        • Магистратура

          • Разработка мобильных приложений и компьютерных игр

        • Аспирантура

        • Вечернее отделение

        • Другое

        • ОИИ

      • Осенний семестр

        • Прикладная математика и информатика

        • Фундаментальная информатика и ИТ

        • Математика, механика

        • Педагогическое образование

        • Магистратура

          • Разработка мобильных приложений и компьютерных игр

        • Аспирантура

        • Вечернее отделение

        • Другое

      • Воскресная компьютерная школа

        • Пользователь компьютера плюс

        • Пользователь прикладных программ

        • Программирование I ступень

        • Программирование II ступень

        • Программирование III ступень

        • Архив

      • Воскресная математическая школа

        • Открытое тестирование РНОМЦ и мехмата ЮФУ - 2025

        • Олимпиадная математическая школа

        • Повышение квалификации

        • Доступная математика

        • Лаборатория математического онлайн-образования мех...

        • Осенняя универсиада

        • Научно-практическая конференция

        • ВМШ

          • ВМШ - 24

        • Летняя олимпиадная математическая школа РНОМЦ и ме...

      • Государственная итоговая аттестация

      • Дополнительное образование

      • Олимпиады

      • Видеолекции

      • Разное

      • Архив курсов

      • Заочная школа мехмата ЮФУ

Служба поддержки сайта
Вы используете гостевой доступ (Вход)
PM-OS-2016
Сводка хранения данных
Скачать мобильное приложение Яндекс.Метрика