- Как создавать папки по дате в Linux?
- 2 ответа 2
- ⏱️ Как создать каталоги или файлы с именами на текущую дату/время/месяц/год на Linux
- Создание каталогов или файлов с именами текущей даты / времени / месяца / года на Linux
- Создание каталогов или файлов с произвольным именем с текущей датой
- Создание каталогов файлов в формате ISO
- Больше примеров
- Добавить комментарий Отменить ответ
- • Свежие записи
- • Категории
- • itsecforu.ru
- • Страны посетителей
- IT is good
- Linux создать папку с текущей датой
- Работа с файлами и каталогами в командной оболочке Bash
- Работа с файлами и каталогами
- Команды для каталогов
- Список основных команд
- Команды для файлов
- Список основных команд
- Перенаправление данных
- Генерация имён файлов в Bash
Как создавать папки по дате в Linux?
Есть ли другой короткий / более простой и умный способ сделать следующее в Linux?
Мне нужно использовать crontab для создания папок каждый день и каждый месяц внутри /home /abcd /dammi, /home /abcd /harrami, /home /wxyz /dammi и /home /wxyz /harrami. Кто-нибудь может мне с этим помочь?
2 ответа 2
Как насчет следующего:
Ну, конечно, вы также можете сделать это без переменных DATE_DIR и DAY_DIR но этот алгоритм гарантирует, что дата не генерируется много раз, что быстрее, и гарантирует, что дата будет одинаковой для всех пользователей (даже если вы запустите ее до полуночи и последний каталог создается после полуночи).
Возможно, вам также придется подумать об улучшении сценария с помощью chown, чтобы пользователи могли писать во вновь созданные каталоги.
Редактировать: Если вы хотите создать одинаковую структуру папок в двух подпапках /home вы можете объединить скрипт RolKau с моим:
Edit2: я предполагаю, что список пользователей содержит имена пользователей. Итак, давайте расширим скрипт, чтобы правильно изменить владельца каталога:
Edit3: чтобы сменить владельца, я думаю, что самый простой способ — это прочитать владельца из каталога в /home/ /
Конечно, вы можете использовать stat, чтобы прочитать владельца; но это немного медленнее, чем просто чтение из переменной — как вы и просили:
Edit4: альтернативное решение, использующее жестко закодированное членство в группе.
Edit5: глядя на ваш первоначальный пост, желаемая структура может немного отличаться. Я предполагаю, что вы хотите иметь подкаталог в /home для каждой группы и добавлять только пользовательские каталоги для каждого члена группы. Итак, поехали:
Если пользователь является членом нескольких групп, просто укажите его несколько раз в USER_LIST.
Источник
⏱️ Как создать каталоги или файлы с именами на текущую дату/время/месяц/год на Linux
Показанные далее команды создадут каталоги или файлы с именами с текущей датой или временем на основе часов вашего компьютера.
Создание каталогов или файлов с именами текущей даты / времени / месяца / года на Linux
Чтобы создать каталог и назвать его текущей датой, просто запустите:
Эта команда создаст каталог и назовет его сегодняшней датой в формате dd: mm: yyyy.
Создание каталогов или файлов с произвольным именем с текущей датой
Как насчет пользовательского имени для каталога или файла с датой / временем / месяцем / годом?
Это также возможно.
Создание каталогов файлов в формате ISO
Если вы хотите использовать формат даты ISO (например, 2020-06-06), запустите:
Все вышеперечисленные три команды дают одинаковый результат.
Для создания файлов просто замените mkdir командой «touch».
Больше примеров
Если вы хотите только день текущей даты, используйте:
Эта команда создаст каталог только с текущим днем в имени. т.е. 06.
Точно так же вы можете создавать каталоги с именем текущего месяца только в имени:
Обратите внимение что S – заглавная
Чтобы назвать каталог с текущими минутами, используйте заглавную M:
Во всех приведенных выше примерах мы создали каталоги с номерами на их именах.
Что если вы хотите назвать каталоги с фактическим названием текущего дня / месяца, например, Saturday, October и т. д.?
Добавить комментарий Отменить ответ
• Свежие записи
• Категории
• itsecforu.ru
• Страны посетителей
IT is good
Источник
Linux создать папку с текущей датой
Приветствую всех.
Возникла необходимость изменить ctime папки, но вот никак не могу сообразить где и как это можно сделать. Подскажите, люди, кто может 🙂
Система Linux.
Оглавление |
|
Сообщения по теме | [Сортировка по времени | RSS] |
1 . «Изменить время создания папки» | |
Сообщение от tux2002 | |
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору |
3 . «Изменить время создания папки» | |
Сообщение от Junior | |
Спасибо огромное! | |
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору |
4 . «время ?? папки» | |
Сообщение от Andrey Mitrofanov | |
А можно и не текущую: $ touch -m -d «15 minutes ago» $NAME Вроде, так. На директориях, вроде, работало тоже. Только вот про время _создания_ — не уверен. Time of last access/modification/change есть, про «создание» — тишина | |
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору |
6 . «время ?? папки» | |
Сообщение от tux2002 | |
А я что-то и не заморачивался, буду знать 🙂 | |
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору |
2 . «Изменить время создания папки» | |
Сообщение от Gennadi | |
ls -lisa test touch -t 0710031305 test ls -lisa test | |
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору |
5 . «Изменить время создания папки» | |||||||||||||||||||
Сообщение от Junior | |||||||||||||||||||
Да, спасибо. Практически так же. # mkdir test Источник Работа с файлами и каталогами в командной оболочке BashСодержание: Bash (Bourne Again Shell) — это командная оболочка, использующаяся в таких UNIX-системах, как Linux или MacOS. Она позволяет управлять компонентами ОС с помощью определённых запросов, которые вводятся в консоль или берутся из скрипта. Как новичкам, так и опытным пользователям будет полезно узнать или вспомнить основные команды Bash для управления такими важными аспектами системы, как файлы и каталоги. Этот вопрос будет разобран на примере ОС Linux. Работа с файлами и каталогамиРабота с файлами и каталогами в Linux через Bash осуществляется с учетом иерархического принципа их классификации. Иерархическая структура файловой системы Linux напоминает «дерево». Существует корневой каталог, который является начальным для всей ОС, а в нём, соответственно, масса других подкаталогов. Такой же принцип используется для командной строки. Файлы и каталоги берут начало из корневого узла « / », который является начальной точкой для всех элементов. Ниже представлен стандартный перечень подкаталогов, встречающийся в большинстве UNIX-систем.
Команды для каталоговСуществуют конкретные команды, предназначенные для работы с каталогами. Далее будут приведены самые важные из них. Список основных команд
Помимо этого, существуют полезные сокращения. Например, текущая директория обозначается с помощью « . ». Знак « .. » позволяет задействовать родительский каталог. Для представления домашней директории используется « Пример использования сокращений: Команды для файловДалее приведены основные команды для осуществления взаимодействия с файлами. Начинающим полезно опробовать каждую из них, чтобы лучше понять принцип работы утилит. Список основных команд
Подробную информацию об утилитах можно получить, воспользовавшись справочной службой: « man ».
Перенаправление данныхПеренаправление ввода-вывода в файл осуществляется с помощью специальных знаков. Для вывода используются « > » и « >> », а для ввода — « ». Пример вывода « ls » в файл, а не на экран: Новый файл создаётся автоматически. В случае существования элемента с таким же наименованием, произойдёт перезапись. Чтобы этого избежать, необходимо использовать « >> ». Тогда данные будут дописываться в документ. Пример ввода, при котором информация выносится из файла с помощью команды « sort »: Генерация имён файлов в BashИногда пользователю приходится работать с несколькими файлами одновременно, например, при выполнении переноса документов в другой каталог. Это станет проблемой, если элементов десятки или сотни и среди них нужно отобрать определённые. Для решения поставленной задачи можно попробовать использование шаблонного выражения, позволяющего Bash определить необходимые элементы, ориентируясь по наименованию. Этот способ упрощает управление группой файлов путём применения короткой формулировки в команде. Итак, теперь остаётся разобраться с вопросом составления шаблонов. Сейчас будут приведены основные конструкции для осуществления генерации имён. Чаще всего для отбора файлов применяется символ: « * ». В случае использования этого знака в чистом виде, Bash выберет все элементы в каталоге без исключений. Для примера, чтобы из этого каталога отобрать файлы: file1, file2, file3, следует воспользоваться шаблоном: Символ звёздочки позволяет командному интерпретатору выделить все файлы, начинающиеся с «file». При этом последующая часть наименования будет проигнорирована.
Кроме того, сгенерировать имена можно, взяв за основу расширение файла. Например: Начни экономить на хостинге сейчас — 14 дней бесплатно! Источник |