| Crates.io | dir_tools |
| lib.rs | dir_tools |
| version | 0.1.2 |
| created_at | 2025-03-01 21:20:31.374755+00 |
| updated_at | 2025-03-03 13:35:54.638252+00 |
| description | Набор инструментов для работы с директориями |
| homepage | |
| repository | https://github.com/dece1ver/dir_tools |
| max_upload_size | |
| id | 1574027 |
| size | 117,466 |
Утилита командной строки для эффективной работы с файлами и директориями. Обеспечивает (часто нужные мне) операции по управлению файловой системой через простой интерфейс.
cargo install dir_tools
# или
cargo install --git https://github.com/dece1ver/dir_tools.git
# или скомпилировать из исходников
git clone https://github.com/dece1ver/dir_tools.git
cd dir_tools
cargo build --release
# или скачать в релизах
dirt [КОМАНДА] [ОПЦИИ]
dirt expose <ДИРЕКТОРИЯ> [--force]
Опции:
--force, -f: Игнорировать предупреждение для unix-систем и удалить все стартовые точкиdirt flatten <ДИРЕКТОРИЯ> [--output <ПАПКА>] [--move-files]
Опции:
--output, -o: Директория для сохранения результатов--move-files, -m: Перемещать файлы вместо копированияdirt rename <ДИРЕКТОРИЯ> [TARGET_TYPE] --find <ТЕКСТ> --replace <ТЕКСТ>
Опции:
TARGET_TYPE: dirs, files или both (по умолчанию: both)--find, -f: Что заменить--replace, -r: На что заменитьdirt add-parent-dir <ДИРЕКТОРИЯ> [--delimiter <РАЗДЕЛИТЕЛЬ>]
Опции:
--delimiter, -d: Разделитель между именем директории и файла (по умолчанию: " ")dirt find <ДИРЕКТОРИЯ> [MODE] [--pattern <ШАБЛОН>] [--output <ФАЙЛ>]
Опции:
MODE: Режим поиска: file-name, content, regexp, gavriluk (по умолчанию: file-name)--pattern, -p: Шаблон для поиска--output, -o: Файл для сохранения результатов (не указывать для вывода в stdout)dirt lock <ПУТЬ> [TIMER] [MODE]
Опции:
TIMER: Время блокировки в секундах (не указывать для бессрочной)MODE: Режим блокировки: read, write, read-write (по умолчанию: read-write)dirt tree <ДИРЕКТОРИЯ> [--show-content] [--max-depth <ГЛУБИНА>] [--full-content] [--show-hidden]
Опции:
--show-content, -c: Показывать содержимое файлов--max-depth, -d: Максимальная глубина сканирования (0 - без ограничений)--full-content, -f: Показывать полное содержимое файлов (не указывать для вывода первых 5 строк)--show-hidden, -a: Показывать скрытые файлы# Переименовать все файлы, заменяя "old" на "new"
dirt rename . files --find "old" --replace "new"
# Переместить все файлы из вложенных папок в одну директорию
dirt flatten ./downloads -m -o ./organized
# Добавить имя родительской папки к названию каждого файла
dirt add-parent-dir ./photos -d "_"
# Найти все файлы с текстом "TODO"
dirt find ./project content -p "TODO" -o ./todo-list.txt
# Просмотреть структуру проекта с содержимым
dirt tree . -c -d 3