Мы склонны создавать много файлов и папок в домашней папке наших систем Linux. Эти файлы и папки могут сохранять данные бесконечно без удаления таких файлов и папок при перезагрузке. В Linux появилась новая функция для создания временных файлов в папке «tmp». Эти файлы или папки будут автоматически удалены после перезагрузки, и все данные в этих файлах или папках будут потеряны. Давайте посмотрим на команду «mktemp» в оболочке Linux для создания временных файлов в системе Ubuntu 20.04.
Вам необходимо убедиться, что ваша система уже обновлена и обновлена до системы Ubuntu 20.04. Если нет, попробуйте использовать команду пакета «apt» в терминальной оболочке Ubuntu вместе с ключевым словом «обновление». Прежде всего, вам нужно открыть приложение командной строки, чтобы сделать все это. Приложение командной строки можно запустить с помощью меню действий в верхнем левом углу экрана Ubuntu 20.04. Нажмите на этот значок, и откроется панель поиска. Напишите имя приложения командной строки как «терминал» и нажмите кнопку «Ввод». Он откроет ваш терминал через несколько секунд.
Давайте посмотрим, как однословная команда mktemp работает в оболочке. Итак, в области запроса мы написали команду «mktemp» и нажали «Enter» для выполнения. Вывод будет выглядеть как «/tmp/tmp.GT0OKJH1UY». Это случайный временный файл, созданный в папке «tmp» вашей системы. Имя файла также генерируется автоматически.
~$ mktemp
/tmp/tmp.GT0OKJH1UY
Теперь давайте проверим папку «tmp» нашей системы. Откройте его через проводник. Создается файл tmp.GT0OKJH1UY.
Файл не имеет расширения. Если вы хотите добавить некоторое расширение в конец временного файла, вы должны добавить ключевое слово «—suffix» в команду mktemp вместе с расширением. Расширение должно быть добавлено в кавычках. Как видите, мы использовали расширение «.txt» для создания файла текстового типа в папке «tmp». После выполнения этой команды создается случайный файл «tmp.GT0JUFM1I9.txt» с расширением «.txt» в соответствии с выводом.
~$ mktemp —suffix ".txt"
/tmp/tmp.GT0JUFM1I9.txt
Открыв папку «tmp» с помощью проводника, мы увидели, что в папке с расширением «.txt» создается временный текстовый файл «tmp.GT0JUFM1I9.txt».
Все дело было в создании временного файла в папке «tmp». Наряду с текстовыми файлами или случайными простыми файлами мы также можем создать временный каталог в папке «tmp». Это имя каталога также будет сгенерировано случайным образом, т.е. назначено само по себе. Эту команду «mktemp» можно использовать с флагом «-d» для создания случайного каталога в папке «tmp». После выполнения этого запроса в папке «tmp» создается имя каталога «tmp.P4IFMF1LKA».
~$ mktemp —suffix -d
/tmp/tmp.P4IFMF1LKA.txt
Давайте откроем проводник и перейдем к папке «tmp» вашей системы Ubuntu 20.04, как показано ниже. Каталог с именем «tmp.P4IFMF1LKA» можно увидеть в открытой папке «tmp» нашей системы, показанной на изображении. Это временная папка, которая может автоматически удалиться из системы после перезагрузки системы Ubuntu 20.04.
Как и простые случайные файлы, временные файлы и каталоги также имеют некоторые привилегии и ограничения, автоматически назначаемые системой после их создания. Допустим, мы создали новый временный файл «tmp.uhPHOWaabz» с запросом «mktemp» в оболочке. Теперь мы можем проверить назначенные привилегии этому вновь созданному временному файлу с помощью команды list. Итак, мы должны использовать ключевое слово «ls» вместе с флагом «-al» вместе с расположением файла в папке «tmp».
Результат показывает, что случайный файл имеет только привилегии «чтения» и «записи» для текущего пользователя, т. е. «andreyex», и не имеет назначенных привилегий для группы и других пользователей. Вывод также показывает пользователя и группу, к которой он принадлежит, а также дату и время его создания. Речь шла о простых временных файлах.
~$ mktemp
/tmp/tmp.KIFC14JILCI.txt
~$ ls -al /tmp/tmp.KIFC14JILCI.txt
-rw------- 1 andreyex andreyex 0 23:40 7 /tmp/tmp.KIFC14JILCI.txt
Теперь мы проверим то же самое для временных каталогов. Поэтому вам нужно создать временную директорию в папке «tmp» с помощью команды «mktemp» с флагом «-d». Теперь каталог создается в каталоге «tmp». Команда list используется для проверки привилегий, назначенных временному каталогу, только что созданному в папке «tmp». Флаг «-ld» используется в команде списка вместе с путем к каталогу.
Каталог имеет права на чтение, запись и выполнение для текущего пользователя, т. е. andreyex. В то время как другие пользователи и группы не имеют прав на чтение, запись и выполнение этого каталога. Вывод, представленный на изображениях, показывает имя каталога, дату и время его создания. Кроме того, он показывает группу и имя пользователя, к которому он принадлежит.
~$ mktemp d
/tmp/tmp.KJ6BBL9KIL
~$ ls -ld /tmp/tmp.KJ6BBL9KIL
drwx------ 2 andreyex andreyex 4026 23:41 7 /tmp/tmp.KJ6BBL9KIL
mktemp используется не только для создания временных файлов и каталогов в папке учетных записей «tmp», но и в «домашней» папке. Для этого вам нужно добавить имя файла вместе с более чем 3 «XXX» в конце. В конечном итоге он создаст ваш файл «newcHs» в домашней папке. Символы «XXX» будут автоматически заменены автоматически сгенерированными системой символами. Команда list используется для вывода списка всех файлов и каталогов текущего дома нашей системы Ubuntu 20.04. Файл «newcHs» отображается в «домашнем» каталоге.
~$ mktemp newXXX newhGY
~$ ls Desktop Downloads new Pictures Templates newhGY
Documentd Music
Чтобы создать каталог в домашней корневой папке, нам нужно добавить флаг «-d» в папку «mktemp» с именем каталога, имеющим «XXX» в конце. Создается каталог «newhGY». Запрос списка «ls» показывает, что каталог «newhGY» находится в домашней папке.
Вывод
Мы реализовали работу команды «mktemp» в Ubuntu 20.04. Мы использовали его для создания временных файлов и папок в папке «tmp» вместе с некоторыми расширениями. Мы также рассмотрели, как создать временный файл и каталог в домашней папке нашей системы.