Как создавать файлы линукс

Содержание
  1. Работа с файлами и каталогами в Linux
  2. Навигация
  3. Поиск своего местоположения
  4. Перемещение по файловой системе
  5. Просмотр содержимого каталогов
  6. Просмотр содержимого файлов
  7. Поиск файлов
  8. Основные операции с файлами и каталогами
  9. Создание файла
  10. Создание каталога
  11. Удаление файлов и каталогов
  12. Перемещение и переименование
  13. Копирование
  14. Размер файлов и директорий
  15. Отображение размера директории в конкретных единицах измерения
  16. Редактирование файлов
  17. Копирование и вставка
  18. Поиск и замена
  19. Сохранение и выход из редактора
  20. Как быстро создать пустой и непустой текстовый файл в Linux через терминал?
  21. Создание пустых файлов
  22. Создание файлов с текстом
  23. Другие способы создания файлов
  24. Создание пустого файла с помощью touch
  25. Создание файла «с текстом» с помощью cat
  26. Пример
  27. Создание файла с помощью редактора.
  28. Создание файла с данными через dd
  29. Выделение места под файл средствами файловой системы

Работа с файлами и каталогами в Linux

Если у вас нет большого опыта работы с системами Linux, вы можете быть очень удивлены возможностями управления операционной системой из командной строки. Понимание принципов работы через консоль пригодится и для управления домашним компьютером, например, с ОС Ubuntu, и для администрирования серверов cloud.timeweb.com с установленными Unix-подобными системами. В этой статье мы попытаемся ознакомить вас с основами. Это руководство должно дать вам необходимый минимум знаний и хорошую отправную точку для дальнейших исследований.

Наиболее фундаментальные навыки, которыми вам необходимо овладеть, — это перемещение по файловой системе и получение представления о том, что находится вокруг вас. В этом разделе мы обсудим инструменты, которые позволят вам это сделать.

Поиск своего местоположения

После того как вы подключаетесь к своему серверу, вы обычно попадаете в домашний каталог вашей учетной записи пользователя (если не применены нестандартные настройки). Домашняя директория — это директория, которая используется для хранения пользовательских файлов, например документов, фото, видео-файлов. В этой директории вы имеете полные права для совершения любых действий, таких как создание, перемещение, удаление файлов и директорий. Чтобы узнать, где находится домашний каталог пользователя, используйте команду pwd (сокращение от print working directory). Эта команда выведет путь до каталога, в котором вы находитесь в данный момент:

В ответ вы должны получить строку, которая выглядит похожим образом:

Название домашней директории пользователя совпадает с именем его учетной записи. Этот каталог находится внутри каталога /home , который, в свою очередь, сам расположен внутри каталога верхнего уровня, который называется root , но обозначается одной косой чертой / .

Перемещение по файловой системе

Часто вам может понадобиться изменить текущий рабочий каталог, чтобы получить доступ к другим подкаталогам и файлам.

Чтобы изменить текущий каталог , в linux используется команда cd (сокращение от change directory), за которой, в качестве аргумента, следует имя каталога, относительно текущего:

или абсолютный (полный) путь:

Чтобы вернуться на уровень выше, в родительскую директорию, можно в качестве аргумента передать команде cd две точки:

Чтобы вернуться в домашний каталог пользователя, нам не обязательно передавать полный путь к нему, вместо этого можно использовать короткую запись, передав в качестве аргумента символ «тильда»:

Чтобы перейти в корневой каталог:

Просмотр содержимого каталогов

Теперь, когда мы знаем, как перейти в нужный нам каталог и отобразить путь до него, пришло время разобраться, как просмотреть содержимое каталога . Чтобы это сделать, в linux используется команда ls (сокращение от list):

Читайте также:  Midnight commander linux размер папки

В ответ мы увидим список файлов и директорий:

addresses.txt Documents Downloads grades.txt 

Чтобы посмотреть содержимое каталога, надо передать путь до него:

Чтобы вывести список всех файлов в подкаталогах, используйте флаг -R :

Так же в linux-команде ls можно передать дополнительные флаги. Например, чтобы вывести подробную информацию о содержимом каталога, такую как права доступа, дату последнего изменения, можно использовать команду:

Чтобы увидеть скрытые файлы и директории (обычно их имена начинаются с точки) нужно использовать флаг -a . Флаги можно комбинировать друг с другом, например:

Просмотр содержимого файлов

Для вывода содержимого файла в терминал, используется команда cat (сокращение от concatenate). В качестве аргумента ей необходимо передать имя файла в текущем каталоге или путь до него:

cat file1.txt
cat /home/demo/file2.txt

Поиск файлов

Иногда вам может понадобиться найти местоположение определенного файла. Поиск файла в linux легко можно сделать с помощью команд find или locate .

Команда find ищет файл в определенном месте и принимает два аргумента: путь до директории , в которой нужно произвести поиск, и имя файла, который нужно найти. Для того, чтобы поискать файл с именем file1.txt в домашней директории пользователя demo, команда будет выглядеть следующим образом:

find /home/demo -name file1.txt

Команда locate , как и команда find , выполняет поиск файлов, но принимает только один аргумент. Команда locate ищет все возможные файлы и каталоги с заданным именем в системе:

Основные операции с файлами и каталогами

Создание файла

Чтобы создать файл в linux , мы можем воспользоваться командой touch . Например, чтобы создать файл с именем file1.txt в домашней директории пользователя, введите в терминале команду:

Создание каталога

Для того, чтобы создать папку в linux , используется команда mkdir (сокращение от make directory). В качестве аргумента передайте имя директории или путь, по которому хотите ее создать:

Удаление файлов и каталогов

Удаление файла в linux осуществляется при помощи команды rm (сокращение от remove).

Для удаление каталога используется эта же команда rm , но с флагом -r :

rm /home/demo/file1.txt
rm -r /home/demo/Photos

Используйте эту команду с осторожностью, так как ее действие необратимо.

Перемещение и переименование

Для того, чтобы переместить, или переименовать файл в linux используется универсальная команда mv (сокращение от move).

В зависимости от того, как она используется, она может переименовывать файл или перемещать его из одного места в другое. Команда для перемещения файла будет выглядеть так:

mv file1.jpeg /home/demo/Photos/

Для переименования файла из file1.txt в file2.txt используется следующая запись:

Кроме того, вы можете одновременно перемещать и переименовывать файл, указав папку назначения и новое имя файла:

mv file1.txt /home/demo/Documents/file2.txt

Копирование

Команда cp (сокращение от copy), копирует файл из одного места в другое. В отличие от команды mv , используемой для перемещения, команда cp сохраняет исходный файл в его текущей директории и создает копию в другой директории . Команда для копирования файла с именем file1.txt в каталог /home/demo/Documents будет выглядеть так:

cp file1.txt /home/demo/Documents
cp /home/demo/Ptotos/photo1.jpeg /home/demo/Documents

Если вы хотите скопировать директорию, то необходимо использовать флаг -R :

cp -R /home/demo/tutorilas /home/demo/Documents/

Размер файлов и директорий

В linux размер папки можно узнать при помощи команды du (сокращенно от disk utility). Если ввести эту команду без аргументов, то она выведет размеры всех файлов внутри текущей директории . Обычно, в качестве аргумента ей передают путь до директории , размер которой необходимо узнать, и флаги -sh для более красивого и читаемого вывода:

Читайте также:  Linux размер папок в папке

Если мы хотим увидеть размер и состояние конкретного диска, то можно использовать команду df с флагом -h , и названием раздела, который хотим увидеть:

Отображение размера директории в конкретных единицах измерения

По умолчанию команда du отображает размер каталога в байтах. Если нам вдруг потребуется отображать размер файлов и каталогов в килобайтах или мегабайтах, используется эта же команда du , но к ней необходимо будет добавить флаг -k (килобайты) или -m (мегабайты).

Для того, чтобы установить отображение использования дискового пространства в килобайтах для нашей директории demo, введите:

В таком случае будет отображаться использование дискового пространства директорией, но не размер ее файлов.

Чтобы узнать размеры ее файлов, нам понадобится флаг -a .

Редактирование файлов

Для того, чтобы отредактировать файлы, можно воспользоваться встроенным в linux консольным редактором nano.

Чтобы открыть файл с именем file1.txt, введите:

После этого откроется окно с редактором, в котором вы можете приступить к редактированию.

Копирование и вставка

Для того чтобы вырезать строку и поместить ее в буфер обмена, переместите курсор на нужную строку и нажмите Ctrl+K.

Чтобы вставить строку из буфера, нажмите Ctrl+U.

Чтобы скопировать текст произвольной длины, сначала требуется его выделить. Для этого поместите курсор на начало текста, который планируется копировать, и нажмите Ctrl+6. Перемещайте курсор, текст будет выделяться.

Чтобы скопировать выделенный текст в буфер обмена, нажмите Alt+6.

Чтобы вырезать выделенный текст, нажмите Ctrl+K.

Поиск и замена

Для поиска используйте комбинацию клавиш Ctrl+W, затем введите поисковый запрос и нажмите Enter. Курсор переместится к первому найденному совпадению. Чтобы продолжить поиск до следующего совпадения, используйте комбинацию Alt+W.

Сохранение и выход из редактора

Если вы хотите сохранить текущие изменения в файле, нажмите комбинацию клавиш Ctrl+O. Если вы редактируете новый файл, вам будет предложено дать ему имя. Это сохранит текущие изменения, при этом nano останется открытым и вы сможете продолжить работу.

Если вы хотите выйти из редактора нажмите комбинацию клавиш Ctrl+X.

Источник

Как быстро создать пустой и непустой текстовый файл в Linux через терминал?

Ответ общий, вы можете исправить его, если считаете нужным.

Существует N-ое количество способов создания текстовых файлов, мы приведём два основных, которые, на наш взляд, самые быстрые с точки зрения клавиатурного ввода, и несколько других.

Под фразой «при вводе» подразумевается, что нужно ввести команду в терминал и нажать клавишу Enter .

Создание пустых файлов

При вводе этой команды в текущей директории будет создан пустой файл с именем a .

Можно вводить без пробела:

Более читаемый вариант, помогает не ошибиться и не записать случайно результат предыдущей команды в файл:

Можно создать сразу сколь угодно файлов:

Хотя так удобней (о touch будет далее):

Создание файлов с текстом

При вводе этой команды в текущей директории будет создан файл с именем h , содержащий текст blablabla и один перевод строки.

Можно вводить без пробела вокруг оператора > :

Выводимый контекст можно заключить в кавычки, а можно и не заключать, даже если он содержит пробелы:

echo bla bla bla > j echo 'bla bla bla' > k echo "bla bla bla" > l 

Все три вышеперечисленные команды дают одинаковый результат (кроме имён файлов, естественно).

Читайте также:  Linux bacula установка настройка

Также можно провернуть такую штуку:

При вводе этой команды в текущей директории будут созданы два пустых файла: m и n ; и файл o , содержащий текст 123 и один перевод строки.

Иными словами, результат всех команд, которые что-нибудь выводят, можно запихнуть в файл .

Ман по man ‘у . При вводе этой команды в текущей директории будет создан файл с именем p , содержащий мануал по команде man .

Другие способы создания файлов

Создание пустого файла с помощью touch

При вводе этой команды в текущей директории будет создан пустой файл с именем q .

Если быть точным, то touch это команда, основное назначение которой изменить время последнего изменения или последнего доступа файла, если же файл не существует, то она создает его. Цитата.

Создание файла «с текстом» с помощью cat

При вводе этой команды в текущей директории будет создан пустой файл с именем r и терминал перейдёт в режим конкатенации вводимых строк к концу содержимого этого файла. То есть мы можем сразу же начать заполнять файл текстом. Сохранение набранного текста будет происходит построчно по нажатию клавиши Enter . Иными словами, по нажатию клавиши Enter будет выполняться конкатенация.

Можно вводить без пробела:

Пример

  • Вводим cat>s — в текущей директории создан пустой файл с именем s .
  • Набираем 123 — этого текста ещё не будет в файле.
  • Нажимаем Enter — текст 123 записался в файл и курсор, как в терминале, так и в файле, перешёл на новую строку.

На строку выше вернуться нельзя.

Выйти из режима конкатенации можно с помощью Ctrl+D (EOF — End Of File) в начале строки. Если вы уже начали набирать строку, Ctrl+D не закончит ввод файла, но запишет набранную часть строки без символа конца строки. Так вы можете записывать строки частями. Для выхода с незавершённой строкой можно нажать Ctrl+D дважды, тогда последняя строка в файле не будет иметь символа конца строки (EOL — End Of Line).

Создание файла с помощью редактора.

Очевидно, что мы можем исользовать редактор типа nano , vi , vim , etc для создания файла.

  1. Вводим nano t — открывается редактор nano в терминальном режиме.
  2. Вводим 123 и нажимаем Ctrl + O (не ноль, а буква), а затем Enter — в текущей директории создался файл с именем t , содержащий текст 123 и один перевод строки.
  3. Чтобы выйти и редактора нажимаем Ctrl + X (внизу редактора подсказки).

Создание файла с данными через dd

Полезно иногда создавать файл определенного размера с нулями

dd if=/dev/zero of=./file bs=10M count=100 
dd if=/dev/urandom of=./file bs=10M count=100 

Создается файл из 100 блоков по 10 мегабайт — 1 ГБ.

Выделение места под файл средствами файловой системы

Такие команды работают быстерее dd потому как сами данные не записываются, а просто выделяется область диска

fallocate резервирует место под файл на диске, а truncate обрезает файл или добавляет до нужного размера, резервируя место на диске.

При создании файлов таким образом в них могут содержаться куски удаленных рание файлов на некоторых системах.

Источник

Оцените статью
Adblock
detector