Синтаксис mkdir команды следующий:
mkdir [Опция] [Имя директории]
Команда принимает одно или несколько имен каталогов в качестве аргументов
mkdir test
mkdir /tmp/newdir
mkdir /home/sensei/test/1/2/3/4/5/6/7/8/9/
Если какой-либо из родительских каталогов не существует, вы получите ошибку, как показано ниже:
mkdir: cannot create directory ‘/home/sensei/test/1/2/3/4/5/6/7/8/9/’: No such file or directory
это из-за того что не существует родительский каталог под именем 8, Вместо того, чтобы создавать отсутствующие родительские каталоги один за другим, вызовите mkdir команду с -p опцией:
mkdir -p /home/sensei/test/1/2/3/4/5/6/7/8/9/
Когда -p опция используется, команда создает каталог, только если он не существует.
mkdir dir1 dir2 dir3
mkdir -p Micros/{OOP/PYTHON,Server,Client,Linux/{linux1,linux2,linux3},Draw/Photophop}
Команда выше создает следующее дерево каталогов :
Micros/
|-- OOP
| `-- PYTHON
|-- Client
|-- Draw
| `-- Photophop
`-- Linux
|-- linux1
|-- linux2
|-- linux3
cd - это команда смена текущего каталога.
Для смены каталога вы должны четко понимать где вы находитесь и куда нужно направиться (путь до пункта назначения). Команда “pwd” позволяет вам узнать, в каком каталоге вы сейчас находитесь.
В операционной системе Linux может быть несколько видов путей к файлу.
По умолчанию, когда вы запускаете терминал, текущим рабочим каталогом становится рабочий каталог пользователя. (В моем случае имя пользователя sensei)
Для сравнения в Linux это: /home/sensei/ и в Windows это: C:\Users\sensei\
Предполагая, что каталог test существует в вашем домашнем каталоге, вы можете перейти к нему, используя относительный путь к каталогу:
cd test
или вы так же можете перейти в тот же каталог, используя его абсолютный путь:
cd /home/sensei/test/
При переходе в каталог знак слэша после имени каталога является не обязательным атрибутом, в первом примере я не добавил знак (/) после имени test, тем немении после нажатия на клавишу enter произайдет вход в каталог (система автоматически поймет если это каталог а не файл, а если будет файл то он сообщит об этом). Во втором примере я писал путь к каталогу нажимая клавишу TAB на клавиатуре.
Клавиша Tab отличный помощьник для администратора работающего в терминале linux, он реализует автозаполнение командной строки. Предположим, что вы забыли точное имя каталога. Введите начальные буквы каталга и нажмите Tab – система сама дополнит командную строку. Если после нажатия Tab вы услышите звуковой сигнал, значит, возможных вариантов несколько, в этом случае нажмите еще раз Tab, чтобы увидеть весь список возможных каталогов. Если возможных комбинаций нет и автозаполнения не происходит то это обозначает что вы не правильно набираете путь.
В Unix-подобных операционных системах текущий рабочий каталог представлен одной точкой ( . ). Две точки ( .. ) представляют родительский каталог или другими словами каталог непосредственно над текущим. Если вы напечатаете cd . , то перейдете в текущий каталог в терминале вы конечно не увидете изменений так как уже находитесь в текущем каталоге.
Предположим, что вы находитесь в каталоге /home/sensei/test/1/2/3/4/5/6/7/8/9, чтобы переключиться на каталог под именем 8 (на один уровень выше текущего каталога), вы должны набрать:
cd ../
Чтобы вернуться к предыдущему рабочему каталогу:
cd -
Чтобы перейти к вашему домашнему каталогу, просто введите cd без параматра. Другой способ вернуться непосредственно в ваш домашний каталог - использовать символ tilde (~), как показано ниже:
cd ~
Например, если вы находитесь в другом каталоге (/usr/local/bin/) и хотите перейти к каталогу test, который находится внутри вашего домашнего каталога, вы должны набрать:
cd ~/test
Команда cd имеет множество опций, описание которых вы найдете в man-странице (наберите в командной строке man cd). В следующей таблице приведены примеры использования команды cd.
Команда | Результат |
---|---|
cd | Возвращает вас в ваш домашний каталог |
cd ~ | Также возвращает вас в ваш домашний каталог |
cd / | Переносит в корневой каталог |
cd /root | Переносит в домашний каталог пользователя root, или суперпользователя, чья учетная запись создается при установке системы; для доступа к этому каталогу вы должны быть суперпользователем |
cd /home | Переносит в каталог home, где обычно находятся каталоги всех пользователей, существующих в системе |
cd .. | Перемещает на один уровень вверх |
cd - | Перемещает на один уровень назад |
cd /dir1/subdir | Независимо от того, в каком каталоге вы находитесь, этот абсолютный переход переместит вас в каталог subdir, который является подкаталогом каталога dir1 |
cd ../../dir3/dir2 | Этот относительный путь сначала переместит вас на два уровня вверх, затем в каталог dir3, а затем в каталог dir2 |
Команда Touch в Linux используется для изменения временных меток файлов, однако одно из наиболее распространенных способов использования команды Touch включает в себя создание нового пустого файла.
Создание пустого файла
touch file1
Создание нескольких файлов
touch file1 file2 file3
Также можно указывать диапазон, например:
touch file{1..3}
По сравнению с Windows в Linux несколько другие правила построения имен файлов, вам придется с этим смириться. Начнем с того, что в Linux нет такого понятия, как расширение имени файла. В Windows, например, для файла Document1.doc именем файла является фрагмент Document 1, а doc — это расширение. В Linux Document1.doc — это имя файла, никакого расширения нет.
Максимальная длина имени файла — 254 символа. Имя может содержать любые символы (в том числе и кириллицу), кроме / ? < > * “ | . Но кириллицу в именах файлов я бы не рекомендовал вообще. Впрочем, если вы уверены, что не будете эти файлы передавать Windows-пользователям (на флешке, по электронной почте) — используйте на здоровье. А при обмене файлами по электронной почте (кодировка-то у всех разная, поэтому вместо русскоязычного имени пользователь может увидеть абракадабру) имя файла лучше писать латиницей. |
Также вам придется привыкнуть к тому, что Linux чувствительна к регистру в имени файла: FILE.txt и FiLe.Txt — это два разных файла.
По соглашению файлы, чьи имена начинаются с точки, считаются скрытыми. Скрытость файлов никак не связана с возможностями доступа к содержимому скрытого файла или к оглавлению скрытой директории. Просто некоторые программы, вроде ls (она выводит списки файлов и сведения о них), не показывают скрытые файлы, если программе не дано особое указание.
Команда echo имеет простой синтаксис с несколькими опциями:
echo [опции] [входная строка]
Echo часто используется в bash скриптах для отображения информации, такой как запрос пользователя на ввод данных или отображение ошибки или предупреждения для определенного действия в сценарии. Она просто выводит свои аргументы на дисплей:
echo Hello World
Допустим, вы объявили переменную name=khasan. Вы можете отобразить значение этой переменной с помощью команды echo:
echo Значение переменной name равно $name
Его вывод будет отображаться так:
Значение переменной name равно khasan
Вы можете использовать команду echo, чтобы создать новый файл в Linux или добавить новый текст в существующий файл,
echo "Одна направляющая перезаписывает файл своим содержимом" > file.txt
echo "две направляющие добавляет новую строку с конца текста" >> file.txt
Включим интерпретацию специальных последовательностей, параметр “-e” и переведем каждое слово на новую строку, аргумент “\n”:
echo -e "Я \nучусь \nв \nучебном \nцентре \nмикрос \nуз"
Опция “-n” Не переводит результат выполнения команды на новую строку. Подробно с ним мы познакомимся во втором этапе изучения линукса когда будем писать скрипты.
cat — считывает данные из файлов и выводит их содержимое. Это самый простой способ отображения содержимого файла в командной строке.
Простейший способ использования cat - задать команде имя файла. Содержимое текстового файла будет выведено на экран. Например, следующая команда прочитает содержимое файла mytext.txt и выведет его в стандартный поток вывода (экран вашего терминала):
cat mytext.txt
Если файл слишком длинный, он пролистается, и вы увидите только последний экран. При необходимости просмотреть документ постранично или прокручивать его вперёд и назад можно воспользоваться конвеером и передать обработку другой команде:
cat mytext.txt |less
Когда указано несколько файлов, cat будет выводить их последовательно, объединяя содержимое в потоке стандартного вывода. Поэтому следующая команда выведет содержимое двух текстовых файлов, как если бы они были одним:
cat mytext.txt mytext2.txt
Обычно копирование осуществляется командой cp, но для копирования текстовых файлов вы можете аналогичным образом использовать команду cat. cat отправляет результат в stdout (стандартный поток вывода), обычно это экран терминала. Однако, можно перенаправить результат в файл при помощи символа перенаправления “>”:
cat mytext.txt > newfile.txt
Присоединение содержимого текстового файла в конец другого текстового файла:
cat mytext.txt >> newfile.txt
вообщем cat — простой, но очень полезный инструмент для работы с данными в текстовых файлах, системных логах, файлах конфигурации и любыми другими читаемыми для человека данными.