26.08.2020 Система 688 Просмотров
Терминал Linux. Создание, удаление, копирование, перемещение, переименование файлов и директорий
C навигацией разобрались, теперь научимся создавать, удалять, копировать, перемещать файлы и директории (каталоги) в терминале Linux.
Комментирование приветствуется.

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

touch /путь/к/файлу/название_файла
Например, создадим текстовый файл в текущей директории с именем :
2. С помощью перенаправления стандартного потока вывода любой команды

- О перенаправлении стандартных потоках вывода в файл более подробно будет рассказано в одной из следующих статей о терминале Linux.
- Создать файл можно также перенаправлением вывода любой команды в файл.
- В общем виде команда будет следующей:
какая_нибудь_команда > /путь/к/файлу/наименование_файла
- То есть, команда с выводом, затем галочка вправо >, означающая перенаправление вывода команды в файл и путь к файлу.
- Например, перенаправим вывод справки команды ls в файл, который будет создан (а если такой файл есть, то он будет полностью перезаписан):
- Но это мы создали не пустой файл, а если хотим создать пустой, то воспользуемся командой echo c переданной ей пустой строкой (две одинарных ковычки) и перенаправим это в файл:
3. С помощью любого текстового редактора, консольного или с графическим интерфейсом

- Передаем команду запуска любого текстового редактора и путь к файлу.
- Самый простой консольный текстовый редактор это nano:
- Или с помощью текстового редактора с графическим интерфейсом, который установлен в Gnome по умолчанию:
- Про манипуляции с текстом более подробно в одной из следующих статей о терминале Linux.
Создание директорий (каталогов) в терминале Linux
- Создание каталогов выполняется командой «mkdir» (от англ. make directory):
- Создать директорию с именем «dir1»:
- Создать две директории одновременно:
- Создать дерево директорий:
Удаление файлов и директорий в терминале Linux

Для удаления директорий используется команда «rmdir» (от англ. remove directory):
Удаляются директории аналогично, как и создаются. Такие же команды.
Удаление файлов в терминале Linux

Для удаления файлов используется команда «rm» (от англ. remove).
- Работает очень просто, пишете команду rm и путь к файлу, который хотите удалить:
- Удалить файл с именем «file1»:
Но команда «rm» позволяет удалять не только файлы, но и директории (каталоги) вместе с их содержимым.
- Удалить директорию с именем «dir1» и рекурсивно всё её содержимое:
- Удалить две директории и рекурсивно их содержимое:
- Также можно добавить параметр -f, который означает, что при удалении не будет запрашиваться подтверждение на удаление. Команды будут выглядеть так:

Перемещение и переименование файлов и директорий в терминале Linux
Для перемещения и переименовывания файлов и директорий (каталогов) используется команда «mv» (от англ. move).
Всё очень просто. Чтобы переименовать файл, выполняем команду:
mv название_файла новое_название

- Чтобы переместить файл:
Копирование файлов и директорий в терминале Linux
Для копирования используется команда «cp» (от англ. copy).
- Скопировать файл file1 и назвать его file2:
- Копировать директорию dir1 в директорию dir2:
- Копировать файл с именем file1 в директорию c именем dir1:

Справка о командах
- У каждой команды присутствует множество параметров, чтобы узнать их, просто наберите команду и параметр —help:
- Например:
Раздел под домашнюю папку не нужен!
Монтировать домашнюю папку на отдельном разделе рекомендуют для того, чтобы можно было переустанавливать систему без потери личных данных. Но в моём случае у меня уже есть раздел с данными, который решает проблему сохранности нужных мне файлов. Поэтому при установке новой системы я не указываю отдельного раздела для домашней папки. Она создается в корневом разделе системы. То есть при установке системы я указываю ей только один раздел для установки — корневой.
- Команды Linux для работы с файлами | Losst
- Монтирование диска в Linux | Losst
- Структура директорий Linux. Важные файлы Linux — HackWare.ru
Для хранения данных есть отдельный большой раздел, на котором нет никаких операционных систем, а есть только папка DATA, куда я сложил все-все свои файлы, включая настройки нужных мне программ. Чтобы пользоваться этими данными в любой системе, я делаю символьные ссылки на эти папки.
Используйте CD для изменения каталога
В файловом менеджере вы можете щелкнуть каталоги на левой панели, чтобы быстро получить представление о том, где и где хранятся файлы. Каждый раз, когда вы выбираете один из этих каталогов, вы открываете их, меняя свою позицию в иерархии управления файлами.
Тот же эффект достигается в командной строке с помощью cd. Например:
cd Documents
… Изменит каталог на подкаталог Documents. Однако, если вы предпочитаете, вы можете указать полный путь к файлу, чтобы открывать каталоги в другом месте на диске.
cd /etc/fonts
Между тем, вы можете перейти в каталог — например, из Документов обратно в Дом — используя:
cd ..
Также убедитесь, что вы знаете о cd / — эта команда отправит вас обратно в домашний каталог по умолчанию из любого другого.
Команда echo
Также с оператором перенаправления можно использовать и другие команды. Например, это может быть команда «echo», которая выводит текст. Если перенаправить ее вывод в файл, то система создаст указанный файл и сохранит в него текст.
- Каталоги Linux. Курс «Введение в Linux и Bash»
- КАК УДАЛИТЬ ФАЙЛЫ ИЛИ КАТАЛОГИ ТЕРМИНАЛА LINUX — УЧЕБНЫЕ ПОСОБИЯ
- Команда cd Linux | Losst
При создании файлов с помощью оператора перенаправления нужно помнить, что вы можете перезаписать существующий документ. Также нужно отметить, что воспользоваться sudo не получится, поскольку в этом случае с правами суперпользователя будет выполняться команда «echo», а не запись.
Немного чёрной магии
Помните, я говорил, что права задаются тремя числами? Для владельца, для группы и для остальных? Это не вся правда. Есть ещё одно число, которое творит настоящую чертовщину в мозгу неопытных пользователей. По умолчанию этот блок не затрагивается (как будто там стоит 0), но если указать явно, то вот что значит тот самый блок:
SUID (4000, “u+s”) – если этот бит назначен на исполняемом файле, то файл запустится от имени владельца файла (а не того пользователя, кто этот файл запустил).
Допустим, у нас есть скрипт, добавляющий новое правило в файрволл. Само-собой, операция требует повышенных прав (root) и обычный пользователь запустив такой скрипт получит отказ в доступе. Но если назначить скрипту SUID-бит и владелец скрипта будет root, то пользователь сможет его запускать от имени root соответственно. Это круто, но в то же время может быть опасно.
Если SUID назначен на каталог – то файл запустится от имени владельца каталога.
SGID (2000, “g+s”) – практически то же самое, только вместо владельца – берётся группа владельца.

Sticky (1000, “t”) – вот тут начинается самая жесть. Если у нас есть каталог, на котором установлен t-бит, то удалить из этого каталога файлы может только владелец, несмотря на то, что на каталоге может стоять право 777.
Поясню. Допустим, у нас есть каталог /tmp. В него может писать кто угодно. Сделаем там права 777 – т.е. полная помойка. Но вам бы не хотелось, чтобы я мог удалять ваши файлы? А мне бы не хотелось, чтобы вы удаляли мои. Поэтому на каталог вешаем бит “t” и всё. Сохранять в каталог могут все, а удалять – только своё.
Установка Sticky-бита на файл не имеет смысла сейчас, современные версии ОС его игнорируют. Раньше он использовался для запрета выгрузки файла из памяти.
Вам так же понравится: Владение файлами на FreeBSD Квесты админа: #2. Права пользователей в Linux Как расшарить папку в Linux? Файлы с настройками сети в Red Hat Linux Сетевая файловая система NFS в Linux Прокачиваем наш SVN-сервер
Презентации
Те пользователи, которым важна возможность создавать и редактировать презентации, будут в восторге от Impress. Приложение содержит полный набор функций, которых с избытком хватит для создания качественного презентационного проекта.

Панель инструментов со значками позволит легко добавлять в него различные элементы, повышающие наглядность и информативность проекта. Поддерживается проверка орфографии, в том числе автоматическая, как, впрочем, и в других программах рассматриваемого софтверного комплекта.
Я слышал, что в файловой системе Extневозможно восстановить удаленный из Корзины файл. Что делать, если случайно удалил важные файлы?
Как и в Windows, где используется файловая система NTFS, в Linux с файловой системой Ext4, а таковая используется в большинстве дистрибутивов, при очистке Корзины файлы не удаляются сразу, а остаются на диске до тех пор, пока не будут перезаписаны другими файлами. Следовательно, их можно восстановить, но на практике не всё так просто. Дело в том, что при удалении файла из каталога запись о нём удаляется также из inode — особой области физической памяти, в которой хранится информация о записанных блоках. При этом очищенный inode невозможно отличить от тех inode, которые ранее никогда не использовались.
То есть удаляется информация о месторасположении файла, поэтому указать, где раньше находился удаленный файл не может ни одна утилита. Вы точно можете восстановить данные файла вручную, но для этого нужно знать, с какими именно данными вы имеете дело. Для восстановления в Linux также можно пробовать использовать сканирующие программы типа TestDisk, которые пытаются определить тип данных, начало и конец последовательности их байтов, но без полной гарантии положительного результата. Поэтому, если файл имеет для вас ценность, лучше создайте его резервную копию на носителе с файловой системой NTFS.

Краткий итог
Итак, Linux вовсе не является системой для гиков или сисадминов, как до сих пор думают некоторые пользователи. Если речь идет о решении базовых задач, популярные дистрибутивы Linux в этом отношении столь же удобны, как и последние версии Windows. Да, в новой системе поначалу будете ощущать себя неловко, к некоторым вещам придется привыкнуть, некоторым — обучиться с нуля, но разве вы не испытывали затруднения, впервые сев за компьютер под управлением Windows? Опыт приходит со временем и никак иначе. К тому же переход на Linux не означает полный отказ от Windows, ведь обе эти системы прекрасно могут сосуществовать на одном компьютере.