Как создать пустой файл в Linux?
Очень часто возникает необходимость создать пустой файл в папке, работая через терминал.
Порывшись на Linux форумах, обнаружил, что вариантов несколько. Предлагаю на выбор 11 способов.
Способ 1
touch
— команда Unix, предназначенная для установки времени последнего изменения файла или доступа в текущее время. Также используется для создания пустых файлов.
#!/bin/sh touch имя_файла
Способ 2
cat
— утилита UNIX, выводящая последовательно указанные файлы (или устройства), таким образом, объединяя их в единый поток. Если вместо имени файла указывается «-», то читается стандартный ввод.
#!/bin/sh cat /dev/null >имя_файла
Способ 3
tail
— утилита в UNIX, выводящая несколько (по умолчанию 10) последних строк из файла.
#!/bin/sh tail /etc/fstab | grep -E "^Moses$" >имя_файла
Способ 4
date
— утилита Unix для работы с системными часами. Выводит текущую дату и время в различных форматах и позволяет устанавливать системное время.
#!/bin/sh date 2>имя_файла
Способ 5
dd
— программа Unix, предназначенная как для копирования, так и для конвертации файлов.
#!/bin/sh dd count=0 if=/etc/inittab of=имя_файла
Способ 6
Vim
— свободный режимный текстовый редактор, созданный на основе более старого vi. Ныне это один из мощнейших текстовых редакторов с полной свободой настройки и автоматизации, и созданным благодаря этому расширениям и надстройкам.
#!/bin/sh vim -c wq имя_файла
Способ 7
cp
— команда Unix в составе GNU Coreutils, предназначенная для копирования файлов из одного в другие каталоги (возможно, с другой файловой системой). Исходный файл остаётся неизменным, имя созданного файла может быть таким же, как у исходного, или измениться.
#!/bin/sh cp имя_файла_0 имя_файла
Способ 8
echo
— команда Unix, предназначенная для отображения строки текста. Команда echo — выводит текст (выводит текст на стандартное устройство вывода).
#!/bin/sh echo >имя_файла
Способ 9
#!/bin/sh echo '(with-open-file (x "имя_файла" :direction :output))' | clisp -
Способ 10
#!/bin/sh cp /dev/null имя_файла
Способ 11
#!/bin/sh : > имя_файла
Способ 12
Самый короткий из способов, любезно предоставленный пользователем stam.
#!/bin/sh > имя_файла
Ссылки
- Команда touch
- Утилита Cat
- Утилита Tail
- Утилита Date
- Утилита Dd
- Текстовый редактор Vim
- Команда Cp
- Команда Echo
Ещё короче способ:
>new.txt
Спасибо, добавил в статью.
использую всегда первый способ.
спасибо за примеры
А я теперь 12-м пользуюсь за его лаконичность.
Спасибо за статью. 12 способ рулит 🙂
В 8-м способе создается не пустой файл, а весом в 1 байт… 🙂