Как получить список файлов в папке (например, название музыки и фильмов перенести в текст и всё упорядочить…)

Почему не power shell

Power Shell — неплохая консоль, встроенная в Windows. Однако, среди веб-разработчиков множество пользователей OS X и Linux — эти ОС более стабильны, безопасны, а Linux — еще и на пару порядков более распространен на серверах, в сравнении с Windows. На OS X и Linux «из коробки» есть вменяемые консоли, имеющие много общего. Привыкайте сразу к хорошему, функциональному и универсальному.

Лично я, во-первых, всерьез исследую возможность выноса всей работы с автоматизацией фронтенда в виртуальную машину с Ubuntu (я бы перешел на Ubuntu полностью, но Photoshop не позволяет), а во вторых, мой рабочий компьютер Windows 10, а ноутбук — старенький MacBook Air и хочется иметь хоть какую-то унификацию работы с консолью.

Вариант 1: «командная строка»

Этот способ является стандартным и не требует от пользователя каких-либо особых умений, за исключением базового владения «Командной строкой». Итак, инструкция к данному варианту выглядит следующим образом:

  1. Перейдите в ту папку, список файлов из которой вы хотели бы получить.
  2. Теперь зажмите Shift на клавиатуре и нажмите правой кнопкой мыши по пустому месту в окне «Проводника».
  3. Должно появится контекстное меню, где требуется выбрать вариант «Запуск командной строки» или «Открыть окно команд здесь». В случае с последними версиями Windows 10 такого пункта может не быть. Вместо этого нужно нажать на «Запустить окно PowerShell здесь». PowerShell – это новый аналог «Командной строки», который Майкрософт активно внедряет в последние версии Windows 10. По сути отличий в функционале нет никаких.
  4. Открытие командной строки через контекстное меню

  5. Теперь вы можете ввести одну из следующих команд:
    • dir /b>spisok.txt Данная команда сохраняет только имена файлов в файл spisok.txt. Вы можете вместо него указать любое другое название, какое вам будет удобно, но учтите, что оно не должно содержать кириллических символов;
    • dir /s>spisok.txt Сохраняет не только имена файлов, содержащихся в папке, но и имена папок и подпапок, которые могут быть расположена в основной папке.
  6. Для применения выбранной команды впишите её и нажмите на Enter.
  7. Ввод команды на создание списка файлов из командной строки

  8. Спустя некоторое время в той папке, в которую вы перешли в первом шаге появится файл с названием spisok.txt или другим, если вы задавали другое. Откройте его с помощью «Блокнота».

Вариант 3 (список со вложенными файлами и папками)

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

Например, есть у вас в каталоге “Видео” отдельная папка “Кино 90-х”, в которой 2 десятка др. фильмов — вышеперечисленные способы бы не позволили узнать их название (из полученного списка), а этот позволит!

Для работы нам понадобиться 👉 командная строка (ничего сложного там не будет!).

В ней нужно последовательно ввести две команды, после каждой нажать Enter:

Вариант 4: total commander

Total Commander – это популярный файловый менеджер, где пользователь может быстро получить и скопировать всю основную информацию о файлах, а также о содержимом папок. В данном случае получить список файлов, находящихся в папке, можно следующим образом:

  1. В окне Total Commander откройте нужную папку.
  2. В верхнем меню нажмите на пункт «Выделение». Появится контекстное меню, где нужно нажать на вариант «Выделить всё».
  3. Затем в этом же меню выберите пункт «Копировать имена файлов в буфер обмена».
  4. Окно Total-Commander

  5. Создайте и откройте текстовый документ. Это можно сделать как при помощи простого Блокнота, так и Word или других офисных программ.
  6. Вставьте содержимое буфера обмена на страницу, воспользовавшись комбинацией клавиш Ctrl V или вызвав контекстное меню и выбрав там соответствующий пункт.

Вариант 5: браузер

Во всех современных браузерах, будь то Opera, Google Chrome, Yandex и т.д., есть функция просмотра содержимого папок и некоторых файлов, расположенных на компьютере.

Инструкция к этому варианту выглядит следующим образом:

  1. Откройте «Проводник». Выберите при помощи щелчка левой кнопкой мыши ту папку, которую хотите просмотреть в браузере.
  2. Перетащите эту папку в любой удобный для вас браузер. В данном случае рассматривается вариант с Opera.
  3. Открытие списка файлов через браузер

  4. Здесь откроется папка со всем содержимым, которое будет представлено в виде списка. Выделите его и скопируйте, использовав сочетание клавиш Ctrl C.
  5. Создайте любой текстовый документ и откройте его.
  6. Вставьте скопированный список.

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

Вызов командной строки

Есть несколько приёмов, которые помогут вам начать работу с командной строкой. Открыть её можно следующим образом:

  1. Найдите в системной папке C:WindowsSystem32 файл cmd.exe, кликните по нему дважды.
  2. В версиях WindowsXP и выше нажмите вместе клавиши Win R. Откроется системное окно «Выполнить». В строчке наберите cmd, подтвердите действие, нажав ОК.
  3. В Win7, чтобы открыть программу, зайдите в «Пуск» — «Все программы», там найдите «Стандартные», нажав на папку для просмотра, увидите значок с подписью для запуска программы.
  4. В Win7, 10 в «Пуске» впишите внизу в строке поиска («Найти программы и файлы») впишите «командная строка», система покажет программу. В Win8 поиск находится в боковом меню.Командная строка Windows 10

Запуск исполняемых bash-скриптов

Чтобы запустить скрипт script.sh на сервере, нужно выполнить два шага: 

  1. Настроить права на запуск файла для пользователей:

    chmod  x ./script.sh
  2. Запустить скрипт. Если вы находитесь в той же директории, где лежит скрипт, достаточно вызвать его по имени: 

    ./script.sh

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

    sh ./script.sh

    либо 

    /bin/bash ./script.sh

    Если вы находитесь в другой директории, для запуска нужно указать полный путь к скрипту. 

Чтобы иметь возможность запускать скрипт из любого места на сервере одной простой командой, можно создать для него алиас — короткую команду (псевдоним), которая будет ассоциироваться системой с полным вызовом скрипта.

Весь список существующих алиасов системы можно вывести с помощью команды alias:

Создать свой постоянный алиас можно с помощью файла .bashrc, размещённого в домашнем каталоге вашего пользователя. Нужно открыть его для редактирования:

vi ~/.bashrc

В соответствующем разделе нужно добавить ваш алиас в следующем формате:

alias [короткая команда]='[исходная команда]'

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

alias myScript='sh /путь/к/скрипту/script.sh'

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

source ~/.bashrc

После этого вы сможете вызывать ваш скрипт с помощью короткой команды.

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

Как использовать полученную консоль

Тут важно понимать, с чем работаешь. Консоль — возможность «текстового» общения с компьютером: набираем команду — получаем реакцию. Если набранная команда запускает какой-то постоянно выполняющийся процесс (веб-сервер, к примеру), остановить выполнение можно по Ctrl C.

Чаще всего, мы набираем какую то команду и передаваемый ей параметр (один или несколько) и/или ключи (указания как ей работать). Иногда, сразу же набираем еще несколько команд, разделяя их символами && (команды будут выполнены в набранной последовательности, это не единственный возможный разделитель).

Для команд, которые используются часто, можно придумать сокращения (алиасы), чтобы вызывать их быстрее.

Как использовать помощь в командной строке

Чтобы получить доступ к помощи в командную строку нужно просто ввести  команд  help  – помощь, а затем нажать Enter –Ввод . Будет отображаться  список всех доступных команд , как вы можете видеть ниже.

Если нужно узнать про определенную команду ,нужно ввести   help затем следуют название своей команды. Другой способ сделать то же самое, это ввести command_name затем /? параметра. Чтобы проверить, как использовать помощь CD или CD/? для отображения информации о CD команде.На картинке ниже вы можете увидеть результат.

Как перемещаться между папками

Первая команда из списка CD (Change Directory). Эта команда позволяет изменить текущий каталог (или папку). Команда CD приведет вас к вершине дерева каталогов. Давайте посмотрим, как она работает. После открытия командной строки , введите CD и нажмите Ввод . Вы увидите, что это приведет вас к вершине дерева каталогов (в данном случае диск C:).

ПРИМЕЧАНИЕ: В командной строке не учитывается, т.е. команды можно набирать с прописных букв, строчных или комбинации из них (так, CD, CD или компакт-диск будут работать одинаково).

Теперь вы работаете на

C:> 

Если вам нужно пойти в определенную папку с этого диска просто введите CD Имя_папки . Имена подкаталогов разделяются  . Например, когда вам нужно получить доступ к папке System32 , расположенной на

C:Windows

cd windowssystem32, как показано ниже, а затем нажмите Enter  – Ввод .

Когда вам нужно идти в одну папку, используйте команду CD … Давайте предположим, что вы хотите, чтобы вернуться к папкеWindows . Введите тип CD .. и нажмите Enter  – Ввод . Вы заметите, что ваш текущий каталог изменяется на

C:Windows

Как получить доступ к определенному диску

Чтобы получить доступ к другому диску ,  просто введите  букву ,которая следует за ‘:’. Например, мы хотели изменить диск C: на  диск D: . Мы ввели  D , и затем нажали клавишу Enter – Выполнить .

Чтобы изменить диск и каталог, одновременно, используйте команду  CD , следует за  слэшем /d  . Этот параметр используется для изменения текущего диска и определенной папки из других разделов. Например, сейчас вы находитесь надиске  D: , и вы хотите вернуться к диску C: непосредственно в папку Windows.

Примечание: Если ввести букву диска ,можно автоматически перейти на самые последние места на этом диске. Например, если вы находитесь на диска D:  и ввели  тип CD C:Windows ничего не случится. Но, если вы введете C:, то рабочая папка  изменится на C:Windows (при условии, что это был последний каталог, с которым вы работали  на  диске C:).

Как создать новую папку

Вы можете создать новый каталог, используя  команду  MKDIR (Make Directory). Синтаксис этой команды MKDIR имя каталога . Скажем, мы должны создать новую папку с именем 7tutorials_v1 , которая будет размещена в папке  d:7tutorials .

Чтобы проверить, работает это или нет, мы будем использовать снова  команду  dir  . Вновь созданную папку в списке.

:/>  Как отключить жесты экрана и тачпада в Windows 10

Примечание: Не забывайте, что все эти команды , зависят от текущего местоположения в командной строке . Так что если вы находитесь в  C: и тип   MKDIR тест, новая папка будет создана на диске C: .

Еще один способ создать каталог, который не предполагает быть в нужной папке, это ввести полный путь к папке. Например, вы работаете на диске  D: , и вы хотите создать новую папку на диске C: ,которая будет  называтся other_stuff . Просто введите MkDir C:other_stuff  и  нажмите   Enter  -Ввод .

Если вам необходимо одновременно создать папку с подпапками ,вы можете использовать команды  имя_папки MKDIR подпапка . Например, если мы введем MkDir testsbetatest1 , будут созданы три папки : 7tutorials_tests, бета-, test1 , с  древовидной структурой.

Команда copy

Одной из наиболее часто повторяющихся задач при работе на компьютере является копирование и перемещение файлов из одного места в другое. Для копирования одного или нескольких файлов используется команда COPY.

Синтаксис этой команды:

COPY [/A|/B] источник [/A|/B]  [  источник [/A|/B] [  ...]]

  [результат [/A|/B]] [/V][/Y|/–Y]

Краткое описание параметров и ключей команды COPY приведено в таблице.

Таблица 1.1. Параметры и ключи команды COPY

Параметр

Описание

источник

Имя копируемого файла или файлов

/A

Файл является текстовым файлом ASCII, то есть конец файла обозначается символом с кодом ASCII 26 (<Ctrl> <Z>)

/B

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

результат

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

/V

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

/Y

Отключение режима запроса подтверждения на замену файлов

/-Y

Включение режима запроса подтверждения на замену файлов

Приведем примеры использования команды COPY.

Копирование файла abc.txt из текущего каталога в каталог D:PROGRAM под тем же именем:

   COPY abc.txt D:PROGRAM

Копирование файла abc.txt из текущего каталога в каталог D:PROGRAM под новым именем def.txt:

   COPY abc.txt D:PROGRAMdef.txt

Копирование всех файлов с расширением txt с диска A: в каталог ‘Мои документы’ на диске C:

   COPY A:*.txt "C:Мои документы"

Если не задать в команде целевой файл, то команда COPY создаст копию файла-источника с тем же именем, датой и временем создания, что и исходный файл, и поместит новую копию в текущий каталог на текущем диске. Например, для того, чтобы скопировать все файлы из корневого каталога диска A: в текущий каталог, достаточно выполнить такую краткую команду:

   COPY A:*.*

В качестве источника или результата при копировании можно указывать имена не только файлов, но и устройств компьютера. Например, для того, чтобы распечатать файл abc.txt на принтере, можно воспользоваться командой копирования этого файла на устройство PRN: COPY abc.txt PRN

Другой интересный пример: создадим новый текстовый файл и запишем в него информацию, без использования текстового редактора. Для этого достаточно ввести команду COPY CON my.txt, которая будет копировать то, что вы набираете на клавиатуре, в файл my.txt (если этот файл существовал, то он перезапишется, иначе — создастся). Для завершения ввода необходимо ввести символ конца файла, то есть нажать клавиши <Ctrl> <Z>.

Команда COPY может также объединять (склеивать) нескольких файлов в один. Для этого необходимо указать единственный результирующий файл и несколько исходных. Это достигается путем использования групповых знаков (? и *) или формата файл1 файл2 файл3. Например, для объединения файлов 1.txt и 2.txt в файл 3.txt можно задать следующую команду:

   COPY 1.txt 2.txt 3.txt

Объединение всех файлов с расширением dat из текущего каталога в один файл all.dat может быть произведено так:

   COPY /B *.dat all.dat

Ключ /B здесь используется для предотвращения усечения соединяемых файлов, так как при комбинировании файлов команда COPY по умолчанию считает файлами текстовыми.

Если имя целевого файла совпадает с именем одного из копируемых файлов (кроме первого), то исходное содержимое целевого файла теряется. Если имя целевого файла опущено, то в его качестве используется первый файл из списка. Например, команда COPY 1.txt 2.txt добавит к содержимому файла 1.txt содержимое файла 2.txt.

COPY /B 1.txt  ,,

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

Команда COPY имеет и свои недостатки. Например, с ее помощью нельзя копировать скрытые и системные файлы, файлы нулевой длины, файлы из подкаталогов. Кроме того, если при копировании группы файлов COPY встретит файл, который в данный момент нельзя скопировать (например, он занят другим приложением), то процесс копирования полностью прервется, и остальные файлы не будут скопированы.

Команда del

Удалить один или несколько файлов можно с помощью команды

DEL [диск:][путь]имя_файла [ключи]

Для удаления сразу нескольких файлов используются групповые знаки ? и *. Ключ /S позволяет удалить указанные файлы из всех подкаталогов, ключ /F – принудительно удалить файлы, доступные только для чтения, ключ /A[[:]атрибуты] – отбирать файлы для удаления по атрибутам (аналогично ключу /A[[:]атрибуты] в команде DIR).

Команда dir

Еще одной очень полезной командой является DIR [диск:][путь][имя_файла] [ключи], которая используется для вывода информации о содержимом дисков и каталогов. Параметр [диск:][путь] задает диск и каталог, содержимое которого нужно вывести на экран. Параметр [имя_файла] задает файл или группу файлов, которые нужно включить в список. Например, команда

DIR C:*.bat

выведет на экран все файлы с расширением bat в корневом каталоге диска C:. Если задать эту команду без параметров, то выводится метка диска и его серийный номер, имена (в коротком и длинном вариантах) файлов и подкаталогов, находящихся в текущем каталоге, а также дата и время их последней модификации.

Том в устройстве C имеет метку PHYS1_PART2
 Серийный номер тома: 366D-6107
 Содержимое папки C:aditor
.              <ПАПКА>      25.01.00  17:15 .
..             <ПАПКА>      25.01.00  17:15 ..
TEMPLT02 DAT           227  07.08.98   1:00 templt02.dat
UNINST1  000         1 093  02.03.99   8:36 UNINST1.000
HILITE   DAT         1 082  18.09.98  18:55 hilite.dat
TEMPLT01 DAT            48  07.08.98   1:00 templt01.dat
UNINST0  000        40 960  15.04.98   2:08 UNINST0.000
TTABLE   DAT           357  07.08.98   1:00 ttable.dat
ADITOR   EXE       461 312  01.12.99  23:13 aditor.exe
README   TXT         3 974  25.01.00  17:26 readme.txt
ADITOR   HLP        24 594  08.10.98  23:12 aditor.hlp
ТЕКСТО~1 TXT             0  11.03.01   9:02 Текстовый файл.txt
        11 файлов        533 647 байт
         2 папок     143 261 696 байт свободно

С помощью ключей команды DIR можно задать различные режимы расположения, фильтрации и сортировки. Например, при использовании ключа /W перечень файлов выводится в широком формате с максимально возможным числом имен файлов или каталогов на каждой строке. Например:

Том в устройстве C имеет метку PHYS1_PART2
 Серийный номер тома: 366D-6107
 Содержимое папки C:aditor
[.]                    [..]                   TEMPLT02.DAT       UNINST1.000           HILITE.DAT 
TEMPLT01.DAT       UNINST0.000           TTABLE.DAT           ADITOR.EXE           README.TXT 
ADITOR.HLP           ТЕКСТО~1.TXT
        11 файлов        533 647 байт
         2 папок     143 257 600 байт свободно

С помощью ключа /A[[:]атрибуты] можно вывести имена только тех каталогов и файлов, которые имеют заданные атрибуты (R — “Только чтение”, A — “Архивный”, S — “Системный”, H — “Скрытый”, префикс “–” имеет значение НЕ). Если ключ /A используется более чем с одним значением атрибута, будут выведены имена только тех файлов, у которых все атрибуты совпадают с заданными.

DIR C: /A:HS

а для вывода всех файлов, кроме скрытых — команду

DIR C: /A:-H

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

DIR C: /A:D

Ключ /O[[:]сортировка] задает порядок сортировки содержимого каталога при выводе его командой DIR. Если этот ключ опущен, DIR печатает имена файлов и каталогов в том порядке, в котором они содержатся в каталоге. Если ключ /O задан, а параметр сортировка не указан, то DIR выводит имена в алфавитном порядке.

В параметре сортировка можно использовать следующие значения: N — по имени (алфавитная), S — по размеру (начиная с меньших), E — по расширению (алфавитная), D — по дате (начиная с более старых), A — по дате загрузки (начиная с более старых), G — начать список с каталогов.

Ключ /S означает вывод списка файлов из заданного каталога и его подкаталогов.

Ключ /B перечисляет только названия каталогов и имена файлов (в длинном формате) по одному на строку, включая расширение. При этом выводится только основная информация, без итоговой. Например:

templt02.dat
UNINST1.000
hilite.dat
templt01.dat
UNINST0.000
ttable.dat
aditor.exe
readme.txt
aditor.hlp
Текстовый файл.txt

Команда move

Синтаксис команды для перемещения одного или более файлов имеет вид:

MOVE [/Y|/–Y] [диск:][путь]имя_файла1[,...] результирующий_файл

Синтаксис команды для переименования папки имеет вид:

MOVE [/Y|/–Y] [диск:][путь]каталог1 каталог2

Здесь параметр результирующий_файл задает новое размещение файла и может включать имя диска, двоеточие, имя каталога, либо их сочетание. Если перемещается только один файл, допускается указать его новое имя. Это позволяет сразу переместить и переименовать файл. Например,

MOVE "C:Мои документысписок.txt" D:list.txt

Если указан ключ /-Y, то при создании каталогов и замене файлов будет выдаваться запрос на подтверждение. Ключ /Y отменяет выдачу такого запроса.

CD | COPY | XCOPY | DIR | MKDIR | RMDIR | DEL | REN | MOVE

Команда xcopy

Указанные при описании команды COPY проблемы можно решить с помощью команды XCOPY, которая предоставляет намного больше возможностей при копировании. Необходимо отметить, правда, что XCOPY может работать только с файлами и каталогами, но не с устройствами.

:/>  Как настроить цвет границы и тени окна в Windows 10.

Синтаксис этой команды:

XCOPY источник [результат] [ключи]

Команда XCOPY имеет множество ключей, мы коснемся лишь некоторых из них. Ключ /D[:[дата]] позволяет копировать только файлы, измененные не ранее указанной даты. Если параметр дата не указан, то копирование будет производиться только если источник новее результата. Например, команда

   XCOPY "C:Мои документы*.*" "D:BACKUPМои документы" /D

скопирует в каталог ‘D:BACKUPМои документы’ только те файлы из каталога ‘C:Мои документы’, которые были изменены со времени последнего подобного копирования или которых вообще не было в ‘D:BACKUPМои документы’.

Ключ /S позволяет копировать все непустые подкаталоги в каталоге-источнике. С помощью же ключа /E можно копировать вообще все подкаталоги, включая и пустые.

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

Ключ /I важен для случая, когда копируются несколько файлов, а файл назначения отсутствует. При задании этого ключа команда XCOPY считает, что файл назначения должен быть каталогом. Например, если задать ключ /I в команде копирования всех файлов с расширением txt из текущего каталога в несуществующий еще подкаталог TEXT,

   XCOPY  *.txt TEXT /I

то подкаталог TEXT будет создан без дополнительных запросов.

Ключи /Q, /F и /L отвечают за режим отображения при копировании. При задании ключа /Q имена файлов при копировании не отображаются, ключа /F — отображаются полные пути источника и результата. Ключ /L обозначает, что отображаются только файлы, которые должны быть скопированы (при этом само копирование не производится).

С помощью ключа /H можно копировать скрытые и системные файлы, а с помощью ключа /R — заменять файлы с атрибутом “Только для чтения”. Например, для копирования всех файлов из корневого каталога диска C: (включая системные и скрытые) в каталог SYS на диске D:, нужно ввести следующую команду:

   XCOPY C:*.* D:SYS /H

Ключ /T позволяет применять XCOPY для копирования только структуры каталогов источника, без дублирования находящихся в этих каталогах файлов, причем пустые каталоги и подкаталоги не включаются. Для того, чтобы все же включить пустые каталоги и подкаталоги, нужно использовать комбинацию ключей /T /E.

Используя XCOPY можно при копировании обновлять только уже существующие файлы (новые файлы при этом не записываются). Для этого применяется ключ /U. Например, если в каталоге C:2 находились файлы a.txt и b.txt, а в каталоге C:1 — файлы a.txt, b.txt, c.txt и d.txt, то после выполнения команды

   XCOPY C:1 C:2 /U

в каталоге C:2 по-прежнему останутся лишь два файла a.txt и b.txt, содержимое которых будет заменено содержимым соответствующих файлов из каталога C:1.Если с помощью XCOPY копировался файл с атрибутом “Только для чтения”, то по умолчанию у файла-копии этот атрибут снимется. Для того, чтобы копировать не только данные, но и полностью атрибуты файла, необходимо использовать ключ /K.

Ключи /Y и /-Y определяют, нужно ли запрашивать подтверждение перед заменой файлов при копировании. /Y означает, что такой запрос нужен, /-Y — не нужен.

Команды mkdir и rmdir

Для создания нового каталога и удаления уже существующего пустого каталога используются команды MKDIR [диск:]путь и RMDIR [диск:]путь [ключи] соответственно (или их короткие аналоги MD и RD). Например:

MKDIR "C:Примеры"
RMDIR "C:Примеры"

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

Копирование файлов и папок

Команда Копировать , позволяет копировать файлы из одного места в другое. Для использования этой команды вы должны ввести copy locationfilename.extension  locationnewname.extension . Например, давайте используем эту команду, чтобы скопировать picture1.jpg файл из папки  7tutorials  , расположенную на  D:

D: 7tutorials7tutorials_tests

Чтобы сделать более интересно, мы хотим, файл пусть будет называться testing_picture1.gif . Мы напишем команды copy d:7tutorialspicture1.jpg d:7tutorials7tutorials_teststesting_picture1.gif затем нажмите   Enter. Вы получите подтверждение операции, как вы можете видеть ниже.

При копировании в том же каталоге, вы не должны указывать путь в команде. Например, нам нужно скопировать notes.txt сD:7tutorials в ту же папку, только под другим расширением, скажем Notes.doc . Мы просто введём  команду copy Notes.txt Notes.doc  .

Чтобы скопировать папку и её содержимое с места на место, мы будем использовать команду   XCOPY  следует соператорами /s/i. Давайте предположим, что нам нужно скопировать папку с D:7tutorials в  C:backup_7tutorials.

Мы должны ввести команду Xcopy/с/ID:7tutorials C:backup_7tutorials  и нажмите клавишу Enter – Ввод . Параметр ‘/С’гарантирует, что все каталоги и подкаталоги будут скопированы, кроме тех, которые пустые.  Параметр ‘/i’   создаст новый каталог, если папка не существует, и скопирует несколько файлов.

Мелкие хитрости

  • Ctrl ~ — показать или скрыть консоль
  • Ctrl L — очистить экран
  • Ctrl U — полностью убрать всю набранную команду
  • Ctrl R — поиск по истории команд
  • Alt ←/→ — перемещение курсора по словам набранной команды

Кнопки клавиатуры «стрелка вверх» и «стрелка вниз» — переход по истории введенных команд (удобно для повтора команды с чуть измененными параметрами).

Навигация

После подключения к серверу вы оказываетесь в домашней папке пользователя. Чтобы узнать точный путь к вашему текущему местонахождению, воспользуйтесь командой:

pwd

Она выведет текущую рабочую директорию (print working directory). 

Если вам нужно перейти в другую папку, для этого используется команда cd (change directory) с указанием пути к нужной вам папке:

cd /home

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

Открываем имеющуюся папку

Чтобы открыть папку, в командной строке необходимо указать путь к ней. Вначале вписываете команду «cd», а затем после пробела адрес, например, “C:ProgramFilesSkype”.

ВАЖНО. Учтите: если в названиях, входящих в адрес, есть пробелы, весь путь надо заключить в кавычки. Если названия не содержат пробелов, можно кавычки не пропечатывать при этой команде.

Слэш можно применять как прямой, так обратный ( и /). Оба они читаются программой одинаково, выбирайте удобный, привычный для вас.

Если вы не уверены в точном названии, нажмите TAB, затем стрелки вверх/вниз для прокрутки списка. Предположим, что у вас есть папки «helloYou» и «helloMe», расположены они в «C:». Введите команду «C:>cd h», потом дважды нажмите TAB, так вы прокрутите список компонентов, начинающихся на букву «h».

Переименование файлов и папок

Для переименования файлов и папок необходимо использовать команду REN (Переименовать). Для папок просто ввести  имя папки новое_имя ren . Например, если мы хотим переименовать папку 7tutorials_v1 в 7tutorials_final мы вводим ren 7tutorials_v1 7tutorials_final  и нажимаем  Enter  –   Ввод .

Чтобы переименовать файл, использующий ту же команду, например: ren filename.extension. Например, чтобы переименовать 7tutorials_picture.jpg в файл picture1.jpg мы должны использовать команды  ren 7tutorials_picture.jpg picture1.jpg .

Переименование, перемещение и копирование файлов и папок

Скопировать файл в терминале можно с помощью команды:

cp [что копируем] [куда копируем]

C её помощью можно, к примеру, создать копию конфигурационного файла, который вы хотите изменить. Здесь мы создаём копию конфигурационного файла nginx.conf

cp nginx.conf nginx.conf.copy

Папки копируются аналогично. При необходимости скопировать каталог со всем содержимым (рекурсивно) можно добавить к команде ключ -r:

cp -r /docs /files

Здесь мы создаём копию папки docs со всем её содержимым с именем files.

Переместить или переименовать файл также просто: 

mv [что переместить/переименовать] [куда переместить/как назвать]

Например, следующая команда переместит файл file.txt в папку new:

mv file.txt docs/new

Переименовать файл не сложнее:

mv /docs/new/file.txt /docs/new/todolist.txt

В этом примере файл file.txt переименовывается в todolist.txt

Аналогично можно перемещать и переименовывать директории. 

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

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

Для этих двух действий существует одна команда — «move». После неё записываются параметры, затем путь к перемещаемой/переименованной папке, затем путь к новообразуемой. Получается, что для перемещения указываете вначале старый путь, затем после пробела место, куда должен каталог переместиться. При переименовании вы указываете путь со старым названием, затем после пробела новое имя.

Рассмотрим на примерах.

  1. Требуется переместить «Foto» из каталога «MyFile» в корень «C:». Прописывается в командной строке следующее: «move “C:MyFileFoto” “C:”».Перемещение «Example folder», которая лежит в каталоге C:Test, в корневую директорию диска «C»
  2. Требуется переименовать «Foto» в «MyFoto». Пишем так: «move “C:MyFileFoto” “My Foto”».Переименуем папку «Example folder» в папку с названием «New example folder»

Переходы

Работая через командную строку, вы захотели перейти в другой каталог. Вам поможет команда «chdir», позволяющая перейти в другое место. Либо просто заходите в раздел, как описывалось в этой статье выше, с помощью команды «cd».

Для перехода в подкаталог, необязательно указывать полный адрес, ежели находитесь в родительском. Допустим, вы находитесь в «ProgramFile», как в командной строке перейти в папку «Skype»? Не нужно указывать полный путь: «cd “C:ProgramFilesSkype”»; достаточно указать название подкаталога: «cd “Skype”».

Чтобы перейти назад, в родительский каталог, вписываем «cd “ProgramFiles”».

Если требуется поменять диск нахождения, добавляется ключ «/D», например, из диска C: понадобилось перейти в D:, прописываете «cd /D d:/».

Поиск

С помощью команды find можно найти на сервере папку или файл по набору условий. Структура команды проста: 

find [где искать] [как искать] [что искать]

Например, мы знаем название файла hello.txt, но не знаем, где именно на сервере он лежит. Найти его поможет конструкция:

find / -name "hello.txt"
  • / указывает, что искать надо, начиная с корневой папки сервера. Если вам известно, где может лежать искомый файл, можно задать путь точнее.
  • -name указывает, что искать надо строго по имени.
  • "hello.txt" — имя файла, который нам нужно найти. Если известна только часть имени, можно указать сокращённый вариант: "hello*", "*.txt"

Кроме -name, команда find имеет множество опций, которые позволяют уточнить условия поиска подробнее. Вот список наиболее полезных параметров:

:/>  CDMA - Краткое руководство -

Больше информации о возможностях find можно узнать в файлах документации:

man find

Из встроенных инструментов поиска можно также отметить утилиту whereis. Она предназначена для поиска бинарных и системных файлов и директорий служб.  Следующий пример выведет список всех файлов и папок, имеющих прямое отношение к php:

whereis php

Посмотреть содержимое папки позволяет команда ls:

ls # показать содержимое папки (сортировка по имени, папки и файлы вперемешку, несколько столбцов)
ls -a # то же, но показывать и скрытые файлы и папки
ls -a -1 # то же, но в один столбец
ls -hF -1 --sort=extension # показать содержимое папки «красиво, в один столбец»
ls build/css # показать содержимое папки `ТЕКУЩАЯ_ПАПКА/build/css`

Просмотр содержимого

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

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

Если не введёте параметры, список будет представлен с пятью столбцами:

  • дата последнего изменения;
  • дата каталога;
  • если название в списке относится к папке, будет стоять <DIR>; если это другой формат, будет пустое место;
  • вес файла/папки;
  • количество документов в каталоге, их суммарный вес.

Чтобы избежать детализации, введите команду с параметром «/d» — увидите просто список без дополнительной информации.

Разные мелочи (как вдохновение для последующего изучения консольных команд):

df -h # показать статистику использования пространства на дисках
grep -i -n --color 'carousel' index.html css/style.css # найти слово `carousel` в двух указанных файлах (с игнором регистра), вывести строки с этим словом и номера строк (искомое слово подсветить)
find . -iname '*ind*' # найти в текущей папке (и подпапках) все файлы, имена которых содержат `ind` и показать списком
ls -a | tee file.txt # записать в `file.txt` результат вывода команды `ls -a`

Редактирование

Для редактирования файлов используются консольные текстовые редакторы. Самые известные — vi и nano. В некоторых дистрибутивах vi заменён на vim (vi improved, улучшенный vi) или vim.tiny

Редактор vi будет доступен вам по умолчанию на большинстве Linux-систем.

А теперь к делу. Vi (более известен как Vim) — старый, очень гибкий и при этом не очень простой в плане управления редактор. Собственно, так он и попал в популярные программистские и админские шуточки. 

Запуск редактора без аргументов откроет его в режиме справки: 

vi

Чтобы закрыть Vim (без сохранения), введите сочетание :q!

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

vi new-file.txt

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

Чтобы начать ввод, нужно перейти в режим редактирования с помощью клавиши I. Чтобы вернуться в режим просмотра, нажмите Esc.

Перемещение по тексту выполняется с клавиатуры:

  • перемещение в начало текста: Esc дважды G
  • перемещение в конец текста: Shift G
  • перемещение по строке горизонтально: стрелки
  • перемещение по строкам вертикально: стрелки
  • отображение номеров строк: Esc, введите :set number, нажмите Enter
  • перемещение по номерам строк: Esc, введите : номер строки, нажмите Enter

Для выхода с сохранением файла нажмите Esc и введите :wq!

Более современной и удобной альтернативой Vim считается редактор nano. Современные дистрибутивы включают его по умолчанию, но на ранних версиях устанавливать придётся вручную: 

  • Ubuntu и Debian:

    apt -y install nano
  • CentOS:

    yum -y install nano

Вызов nano без аргументов откроет пустой редактор. Можно начать ввод (при сохранении вам будет предложено указать имя и сохранить файл) или вызвать режим помощи со списком доступных команд с помощью сочетания Ctrl G.

Для сохранения файла нажмите Ctrl O — редактор предложит ввести имя файла: введите имя и нажмите Enter. Если файл существовал, и имя изменять не требуется, просто нажмите Enter.

Для выхода из редактора нажмите Ctrl X.

Создание

В терминале есть несколько способов создания новых файлов. 

Самый простой, одновременно создающий и файл, и недостающие папки — команда touch. Достаточно передать ей полный путь к файлу. Для примера создадим в папке docs папку copies, а внутри неё — файл copies-list.txt:

touch docs/copies/copies-list.txt

Несуществующая папка copies создастся автоматически.

Если нужно создать сразу несколько файлов, можно просто перечислить их через пробел: 

touch file1.txt file2.txt file3.txt

Ещё один способ создания новых файлов — вызвать какой-нибудь консольный текстовый редактор с указанием полного пути к файлу. Однако все папки придётся создать заранее. Тогда редактор автоматически создаст файл и откроет его для редактирования. Если не сохранить файл в редакторе, даже пустой, он не будет создан. Команда ниже добавит новый файл с помощью редактора vi:

vi new-file.txt

Для сохранения и выхода из файла в vi нужно нажать клавишу Esc, ввести сочетание :wq и нажать Enter. Для выхода без сохранения нужно также нажать Esc, ввести сочетание :q! и нажать Enter.

Ещё пара способов создания пустых файлов: 

Удаление

Удалить папки, их содержимое позволяет команда «rmdir» либо её сокращённая версия «rm». После прописываются параметры, затем путь.

Если требуется удалить пустой каталог «Example folder», пишется по образцу «rmdir “C: Example folder”».

Если «Example folder» не пустой, в нём имеются подпапки/файлы, чтобы всё вместе удалить, следует после команды прописать ключ «/s». Ключ вписывается после «rmdir», но до адреса назначения. То есть запись будет выглядеть так: «rmdir /s “C:Example folder”». Набрав команду, увидите запрос на подтверждение действий, выбираете «y», что значит, что вы согласны удалить («yes»).

Чтобы запрос на подтверждение постоянно не появлялся, можно сразу прописать ключ «/q». Он вписывается после «/s».

Можно перечислить через пробел удаляемое. Допустим, внутри «Test» вам стали не нужны папки 2 и 3, значит, записываете команду: «rmdir /s /q “C:Test1” “C:Test2” “C:Test3”». Если вы уже находитесь в каталоге «Test», можно вписать сокращённый вариант: «rmdir /s /q 1 2 3».

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

Команда DEL (Удалить) используется для удаления файлов в каталоги, которые вы создали. Чтобы удалить все файлы из каталога вы должны ввести  del directory (имя каталога). Давайте попробуем эту команду. Например, из каталога 7tutorials  которая находится на диске D:  ,  мы будем удалять все файлы из папки 7tutorials_tests , набрав команду  del 7tutorials_tests . Вы должны подтвердить удаление процесса, набрав буквы  Y , а затем нажмите Enter – Ввод .

Примечание: Для удаления скрытых файлов вы должны использовать параметр  /h.

Если нужно удалить один файл, мы будем использовать командe  DEL folowed файл .Скажем ,нам нужно удалить файл notes.txt с диска D:7tutorials . Мы будем вводить  команду del notes.txt  следуют затем нажимаем   Enter – Ввод .

Вот список полезных комбинаций команды  DEL , которые стоит упомянуть:

  • . DEL * DOC – удалить все файлы с расширением DOC (вы можете использовать любое необходимое расширение файла , DOC является примером,который  я использовал);
  • DEL * Test *. – удалить все файлы, начиная с test ;
  • * DEL *. – удалить все файлы из текущего каталога.

Команда DEL  не может быть использована для удаления каталогов, поэтому мы будем использовать другую команду для удаления пустых каталогов: RD (Remove Directory). Ранее мы удалили все файлы из папки 7tutorials_tests . Пришло время удалить его, набрав RD 7tutorials_tests .

Файловая система

Пользователь всегда находится в какой-то папке. К примеру, Вы видите в консоли: nikname@computer /c/cmder — значит сейчас Вы в папке C:/cmder. Чтобы перейти в другую папку, наберите команду cd и укажите ей абсолютный или относительный путь — куда переходить. К примеру:

cd projects # переход в папку projects, которая есть текущей папке
cd /d/projects # переход в папку projects, расположенную по адресу `D:/projects` (где бы не находился пользователь)
cd .. # переход  к родительской папке (вверх на 1 уровень)

Чтобы не набирать имя папки целиком, наберите первые пару символов и нажмите Tab — произойдет автодополнение (если нет двух папок, начинающихся с введенных символов, иначе будут показаны сами эти папки).

Чтение

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

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

cat example.txt

Однако, если мы заведомо знаем, что в файле большой объём информации, нет смысла выводить его целиком. Например, команды head и tail могут вывести часть содержимого с начала или конца файла соответственно. Если добавить к ним ключ -n, можно уточнить, сколько строк текста нужно вывести:

head -n 3 example.txt
tail -n 3 example.txt

Помимо прочего, команда tail очень удобна для чтения логов с ключом -f. В таком режиме она открывает файл в режиме ожидания и выводит все добавляемые данные. Пригодится для тестирования или дебаггинга.

Иногда нам всё-таки нужно полностью просмотреть файл. При этом читать его вывод в терминале неудобно. На такие случаи есть команда less — она открывает файл (или переданный в неё вывод другой команды) в режиме чтения: 

Оставьте комментарий

Adblock
detector