5.1.4. Переименование файлов
5.1.4. Переименование файлов
При данном способе отображения элементами каталога имен на номера индексов, переименование файла концептуально очень просто:
1. Если новое имя файла обозначает существующий файл, сначала удалить этот файл.
2. Создать новую ссылку на файл через новое имя.
3. Удалить старое имя (ссылку) для файла. (Удаление имен обсуждается в следующем разделе.)
Ранние версии команды mv работали таким способом. Однако, при таком способе переименование файла не является атомарным; т.е. оно не осуществляется посредством одной непрерываемой операции. И на сильно загруженной системе злонамеренный пользователь мог бы воспользоваться условиями состояния гонки[51], разрушая операцию переименования и подменяя оригинальный файл другим.
По этой причине 4.2 BSD ввело системный вызов rename():
#include <stdio.h> /* ISO С */
int rename(const char *oldpath, const char *newpath);
На системах Linux операция переименования является атомарной; справочная страница утверждает:
Если newpath уже существует, он будет атомарно замещен .., таким образом, что при попытке другого процесса получить доступ к newpath он никогда не обнаружит его отсутствующим.
Если newpath существует, но по какой-либо причине операция завершается неудачей, rename гарантирует, что экземпляр newpath останется на месте. Однако, в ходе переписывания возможно будет окно, в котором как oldpath, так и newpath ссылаются на переименовываемый файл.
Как и в случае с другими системными вызовами, возвращенный 0 означает успех, а (-1) означает ошибку.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
5.1.4. Переименование файлов
5.1.4. Переименование файлов При данном способе отображения элементами каталога имен на номера индексов, переименование файла концептуально очень просто:1. Если новое имя файла обозначает существующий файл, сначала удалить этот файл.2. Создать новую ссылку на файл через
Переименование объектов
Переименование объектов При необходимости вы можете задать новое имя для любого объекта (файла, папки, ярлыка). Способы выполнения этой операции рассмотрены в видеоролике «Урок 3.8. Переименование объектов».Щелкните правой кнопкой мыши на интересующем вас объекте и
6.1.6. Отображение файлов
6.1.6. Отображение файлов В Linux и Windows используются разные правила именования файлов. Например, в Linux названия чувствительны к регистру, а в Windows — нет. Это значит, что файлы DATA.TXT и data.txt в Windows будут восприняты, как один и тот же файл. Для решения этой проблемы есть несколько
Создание, переименование и удаление таблицы
Создание, переименование и удаление таблицы Итак, вы открыли или создали базу данных (как это сделать, описано в разд. «Приступим к работе» в предыдущей главе). Теперь программа Access готова к работе с таблицами. Если вы создали пустую базу данных, программа автоматически
Переименование объектов
Переименование объектов Имя, которое вы задали при создании файла или папки, не есть догма. В любой момент вы можете его изменить.Для этого выделите нужный объект, щелкните кнопкой мыши на нем и в открывшемся меню выберите команду Переименовать. Совет Если лень возиться с
Переименование и перемещение листов
Переименование и перемещение листов По умолчанию листы именуются как Лист1, Лист2, Лист3 (Sheet1, Sheet2, Sheet3 в англоязычной версии) и т. д. Однако часто требуется для удобства переименовать листы. Например, если на каждом листе книги содержатся статистические или расчетные
Размещение и переименование библиотеки
Размещение и переименование библиотеки Для встроенного сервера- распространяемого как fbembed.dll- нет проблем с переименованием этой библиотеки в имя gds32.dll или fbclient.dll, или любое другое нужное имя. Для того чтобы пакет встроенного сервера был самодостаточным, эта библиотека
Пример A-4. blank-rename: переименование файлов, чьи имена содержат пробелы
Пример A-4. blank-rename: переименование файлов, чьи имена содержат пробелы Это даже более простая версия предыдущего примера.#! /bin/bash# blank-rename.sh## Заменяет пробелы символом подчеркивания в именах файлов в текущем каталоге.ONE=1 # единственное или множественное число (см.
Переименование
Переименование Полезной альтернативой команде меню Файл ? Сохранить как является функция переименования проекта. Данная функция обладает следующими свойствами:• не создает копии проекта;• оставляет проект в папке, в которой он был ранее сохранен (при переименовании
4.2.3. Копирование, переименование и перемещение файла или папки
4.2.3. Копирование, переименование и перемещение файла или папки Для копирования файла (группы файлов) или папки (группы файлов) нужно выполнить следующие действия:1. Выделите файлы — можно выделить один файл или каталог — для этого просто щелкните по нему. Для выделения
Переименование компонентов
Переименование компонентов Иногда при множественном наследовании возникает проблема конфликта имен (name clash). Ее решение - переименование компонентов (feature renaming) - не только снимает саму проблему, но и способствует лучшему пониманию природы
Переименование
Переименование Любой язык, поддерживающий множественное наследование, должен как-то решать проблему конфликта имен. Коль скоро мы не можем и не должны требовать от разработчиков внесения изменений в исходные классы, есть всего два решения, помимо тех, что были описаны
Переименование файлов и папок
Переименование файлов и папок Для переименования файла или папки можно использовать следующий способ.1. Щелкните правой кнопкой мыши на значке нужного файла или папки.2. В появившемся контекстном меню выберите пункт Переименовать. Название объекта будет взято в рамку
Переименование объектов
Переименование объектов Чтобы переименовать объект, сначала отметьте его. Далее в меню Файл выберите команду Переименовать. Вы достигнете той же цели, если нажмете клавишу F2 или, щелкнув правой кнопкой мыши на имени необходимого объекта, выберете в открывшемся