10.1.28. Получение и изменение текущего каталога
10.1.28. Получение и изменение текущего каталога
Получить имя текущего каталога можно с помощью метода Dir.pwd (синоним Dir.getwd). Эти имена уже давно употребляются как сокращения от «print working directory» (печатать рабочий каталог) и «get working directory» (получить рабочий каталог). На платформе Windows символы обратной косой черты преобразуются в символы прямой косой черты.
Для изменения текущего каталога служит метод Dir.chdir. В Windows в начале строки можно указывать букву диска.
Dir.chdir("/var/tmp")
puts Dir.pwd # "/var/tmp"
puts Dir.getwd # "/var/tmp"
Этот метод также принимает блок в качестве параметра. Если блок задан, то текущий каталог изменяется только на время выполнения блока, а потом восстанавливается первоначальное значение:
Dir.chdir("/home")
Dir.chdir("/tmp") do
puts Dir.pwd # /tmp
# Какой-то код...
end
puts Dir.pwd # /home
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКДанный текст является ознакомительным фрагментом.
Читайте также
6.1.1. Получение текущего времени: time() и difftime()
6.1.1. Получение текущего времени: time() и difftime() Системный вызов time() получает текущие дату и время; difftime() вычисляет разницу между двумя значениями time_t:#include <time.h> /* ISO С */time_t time(time_t *t);double difftime(time_t time1, time_t time0);time() возвращает текущее время. Если параметр t не равен NULL, переменная,
8.6. Изменение корневого каталога: chroot()
8.6. Изменение корневого каталога: chroot() Текущий рабочий каталог, установленный с помощью chdir() (см. раздел 8.4.1 «Изменение каталога — chdir() и fchdir()»), является атрибутом процесса, таким же, как набор открытых файлов. Он также наследуется новыми процессами.Менее известным
Пример: печать текущего каталога
Пример: печать текущего каталога Программа 2.6 реализует очередную версию команды UNIX pwd. Размер буфера определяется значением параметра МАХ_РАТН, однако проверка ошибок все равно предусмотрена, чтобы проиллюстрировать работу функции GetCurrent-Directory.Программа 2.6. pwd: печать
14.1.3. Смена текущего каталога
14.1.3. Смена текущего каталога Предусмотрено два системных вызова, меняющих текущий каталог процесса: chdir() и fchdir().#include <unistd.h>int chdir(const char * pathname);int fchdir(int fd);Первый системный вызов получает имя каталога в качестве единственного аргумента; второй принимает файловый
5.9 СМЕНА ТЕКУЩЕГО И КОРНЕВОГО КАТАЛОГА
5.9 СМЕНА ТЕКУЩЕГО И КОРНЕВОГО КАТАЛОГА Когда система загружается впервые, нулевой процесс делает корневой каталог файловой системы текущим на время инициализации. Для индекса корневого каталога нулевой процесс выполняет алгоритм iget, сохраняет этот индекс в
10.1.29. Изменение текущего корня
10.1.29. Изменение текущего корня В большинстве систем UNIX можно изменить «представление» процесса о том, что такое корневой каталог /. Обычно это делается из соображений безопасности перед запуском небезопасной или непротестированной программы. Метод chroot делает указанный
10.1.31. Получение содержимого каталога
10.1.31. Получение содержимого каталога Метод класса Dir.entries возвращает массив, содержащий все элементы указанного каталога:list = Dir.entries("/tmp") # %w[. .. alpha.txt beta.doc]Как видите, включаются и элементы, соответствующие текущему и родительскому каталогу. Если они вам не нужны, придется
Сохранение текущего документа
Сохранение текущего документа Для сохранения текущего документа в состав меню Кнопки «Office» включены команды Сохранить, которая активизируется также нажатием Shift+F12, и Сохранить как.Команду Сохранить применяют, как правило, для сохранения изменений в текущем документе
Изменение каталога по умолчанию для программ
Изменение каталога по умолчанию для программ Можно изменить предлагаемый системой по умолчанию каталог при установке программ:[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion]"ProgramFilesDir"="C:Program Files""ProgramFilesPath"="C:Program
11.3.1. Отображение текущего времени
11.3.1. Отображение текущего времени Модуль time.so (исходный текст приведен в листинге 11.6) генерирует простую страницу, где отображается текущее время на сервере. В функции module_generate() вызывается функция gettimeofday(), возвращающая значение текущего времени (см. раздел 8.7, "Функция
Пример 12-5. copydir, копирование файлов из текущего каталога в другое место, с помощью xargs
Пример 12-5. copydir, копирование файлов из текущего каталога в другое место, с помощью xargs #!/bin/bash# Копирует все файлы из текущего каталога# в каталог, указанный в командной строке.if [ -z "$1" ] # Выход, если каталог назначения не задан.then echo "Порядок использования: `basename $0` directory-to-copy-to"
18.3.6. Проверка текущего каталога
18.3.6. Проверка текущего каталога Некоторые сценарии, реализующие административные задачи, можно выполнять из корневого каталога. Если производится глобальное перемещение файлов или же изменяются права доступа к файлу, несложный тест позволяет уточнить, вовлекается ли в
28.2. Уточнение текущего уровня выполнения
28.2. Уточнение текущего уровня выполнения В этой главе не рассматриваются вопросы системного администрирования, однако shell–программист должен знать не только принципы функционирования сценариев rc.scripts, но также принципы их совмещения с каталогами конфигурации уровня