Разное

Работа с файлами с в linux: основные команды работы с файлами

Содержание

71 команда Linux на все случаи жизни. Ну почти

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

Команды Linux для навигации в терминале

  1. &&. Строго говоря, это не команда. Если вы хотите выполнить сразу несколько команд, поставьте между ними двойной амперсанд вот так: первая_команда && вторая_команда. Терминал выполнит команды по порядку. Вы можете ввести столько команд, сколько захотите.
  2. alias. Присваивает созданные вами названия длинным командам, которые вы не можете запомнить. Введите alias длинная_команда короткая_команда.
  3. cd. Изменяет текущую терминальную папку. Когда вы запускаете терминал, он использует вашу домашнюю папку. Введите cd адрес_папки, и терминал будет работать с файлами, которые там находятся.
  4. clear. Очищает окно терминала от всех сообщений.
  5. history. Отображает все недавно введённые вами команды. Кроме того, вы можете переключаться между недавними командами с помощью клавиш «Вверх» и «Вниз». Если вы не хотите, чтобы введённая вами команда была записана, поставьте перед ней пробел так: ваша_команда.
  6. man. Отображает руководство по программам и командам Linux. Введите man имя_пакетаили man ваша_команда.
  7. whatis. Отображает краткое описание какой-либо программы. Введите команду и название программы whatis имя_пакета.

Команды Linux для получения прав суперпользователя

Для выполнения множества действий в системе, например для установки и удаления программ, вам понадобятся права администратора, или суперпользователя root, как его называют в Linux.

  1. sudo. Эта команда даст вам права суперпользователя.
    Введите sudo перед нужной командой (например,sudo apt upgrade), чтобы выполнить её от имени администратора. Система спросит у вас пароль.
  2. sudo su. После этой команды все введённые вами команды будут исполняться от имени суперпользователя, пока вы не закроете терминал. Используйте её, если вам нужно выполнить много команд с правами администратора.
  3. sudo gksudo. Команда для запуска с правами администратора приложения с графическим интерфейсом. Например, если вы хотите переместить или изменить системные файлы, введите sudo gksudo nautilus (укажите тот файловый менеджер, которым пользуетесь).
  4. sudo !!. Эта команда запустит ранее введённую команду с правами администратора. Полезно, если вы набрали команду без sudo.

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

Команды Linux для управления пакетным менеджером

Установку и удаление приложений в Linux выполняют пакетные менеджеры. В Ubuntu и Debian пакетный менеджер называется apt, в Fedora — dnf, в Arch и Manjaro — pacman. Они загружают приложения из сетевых репозитариев, источников пакетов. Давать им команды следует с правами суперпользователя.

apt (Debian/Ubuntu/Mint)

  1. sudo apt install имя_пакета. Установить нужный пакет.
  2. sudo apt-add-repository адрес_репозитария. Добавить сторонний репозитарий.
  3. sudo apt update. Обновить сведения о пакетах.
  4. sudo apt upgrade . Обновить все пакеты до самых свежих (выполнять после apt update).
  5. sudo apt remove имя_пакета . Удалить ненужный пакет.
  6. sudo apt purge имя_пакета . Удалить ненужный пакет со всеми зависимостями, если хотите освободить больше места.
  7. sudo apt autoremove . Удалить все ненужные зависимости, бесхозные пакеты и прочий мусор.

dnf (Red Hat/Fedora/CentOS)

  1. sudo dnf install имя_пакета. Установить нужный пакет.
  2. sudo dnf config-manager --add-repo адрес_репозитария. Добавить сторонний репозитарий.
  3. sudo dnf upgrade. Обновить все пакеты до самых свежих.
  4. sudo dnf remove имя_пакета. Удалить ненужный пакет.
  5. sudo dnf autoremove. Удалить все ненужные зависимости.

pacman (Arch/Manjaro)

  1. sudo pacman -S имя_пакета. Установить нужный пакет.
  2. sudo yaourt -S имя_пакета. Установить пакет из AUR, если его нет в основном репозитарии.
  3. sudo pacman -Sy. Обновить сведения о пакетах.
  4. sudo pacman -Syu. Обновить все пакеты до самых свежих.
  5. sudo pacman -R имя_пакета. Удалить ненужный пакет.
  6. sudo pacman -Rs имя_пакета. Удалить ненужный пакет со всеми зависимостями.

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

sudo apt install firefox clementine vlc

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

Команды Linux для управления процессами

  1. kill. Эта команда служит для принудительного завершения процессов. Нужно ввести kill PID_процесса. PID процесса можно узнать, введя top.
  2. xkill. Ещё одна команда для завершения процессов. Введите её, затем щёлкните по тому окну, которое нужно закрыть.
  3. killall. Убивает процессы c определённым именем. К примеру, killall firefox.
  4. top. Отображает перечень запущенных процессов, сортируя в зависимости от потребления ресурсов CPU. Своего рода терминальный «Системный монитор».

Команды Linux для управления файлами

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

  1. cat. Когда команда используется с одним текстовым файлом (вот так: cat путь_к_файлу), она отображает его содержимое в окне терминала. Если указать два и больше файлов, cat путь_к_файлу_1 путь_к_файлу_2, она склеит их. Если ввести cat путь_к_файлу_1 > новый_файл, она объединит содержимое указанных файлов в новый файл.
  2. chmod. Позволяет изменять права доступа к файлу. Может пригодиться, если вы хотите внести изменения в системный файл.
  3. chown. Изменяет владельца файла. Следует выполнять с правами суперпользователя.
  4. file. Выводит информацию об указанном файле.
  5. nano. Открывает простой текстовый редактор. Можно создать новый текстовый файл или открыть существующий: nano путь_к_файлу.
  6. rename. Переименовывает файл или несколько файлов. Команду можно использовать и для массового переименования файлов по маске.
  7. touch. Изменяет дату последнего открытия или модификации указанного файла.
  8. wget. Загружает файлы из интернета в терминальную папку.
  9. zip. Распаковывает и сжимает архивы.

Создание и удаление файлов и папок

  1. mkdir. Создаёт новую папку в текущей терминальной папке или в указанной папке: mkdir путь_к_папке.
  2. rmdir. Удаляет указанную папку.
  3. rm. Удаляет файлы. Может удалить как отдельный файл, так и группу, соответствующую определённым признакам.

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

  1. cp. Создаёт копию указанного файла в папке терминала: cp путь_к_файлу. Или вы можете указать назначение cp путь_к_файлу путь_для_копии.
  2. mv. Перемещает файл из одной папки в другую. Вы можете указать имя для перемещаемого файла. Забавно, но в Linux эта команда может использоваться и для переименования файлов. Просто укажите ту же папку, где находится файл, и другое имя.

Поиск файлов

  1. find. Поиск файлов по определённым критериям, таким как имя, тип, размер, владелец, дата создания и модификации.
  2. grep. Поиск текстовых файлов, содержащих определённые строки. Критерии очень гибко настраиваются.
  3. locate. Поиск файлов и папок, чьи названия подходят запросу, и отображение их путей в файловой системе.

Команды Linux для работы с разделами

  1. lsblk. Эта команда демонстрирует, какие диски есть в вашей системе и на какие разделы они поделены. Также команда отображает имена ваших разделов и накопителей, в формате sda1, sda2 и так далее.
  2. mount. Монтирует накопители, устройства или файловые системы Linux, чтобы вы могли с ними работать. Обычно устройства подключаются автоматически, как только вы щёлкнете по ним в файловом менеджере. Но иногда может понадобиться примонтировать что-то вручную. Вы можете подключать что угодно: диски, внешние накопители, разделы и даже ISO-образы. Эту команду нужно выполнять с правами суперпользователя. Чтобы примонтировать имеющийся диск или раздел, введите mount sdX.
  3. umount. Демонтирует файловые системы. Команда
    umount sdX
    отключит файловую систему внешнего носителя, чтобы вы могли извлечь его.
  4. dd. Эта команда копирует и преобразовывает файлы и разделы. У неё множество различных применений. Например, dd if=/dev/sda of=/dev/sdb сделает точную копию раздела sda на разделе sdb. dd if=/dev/zero of=/dev/sdX затрёт содержимое указанного носителя нулями, чтобы информацию было невозможно восстановить. А dd if=~/Downloads/ubuntu.iso of=/dev/sdX bs=4M сделает загрузочный носитель из скачанного вами образа с дистрибутивом.

Команды Linux для управления системой

  1. df. Отображает объём вашего диска, и сколько на нём осталось свободного места.
  2. free. Отображает объём доступной и занятой оперативной памяти.
  3. uname. Отображает сведения о системе Если ввести uname, терминал сообщит только Linux. Но команда
    uname -a
    выводит сведения об имени компьютера и версии ядра.
  4. uptime. Сообщает, как долго запущена ваша система.
  5. whereis. Отображает расположение исполняемого файла нужной программы.
  6. whoami. Называет имя пользователя.

Команды Linux для управления пользователями

  1. useradd. Регистрирует нового пользователя. Введите useradd имя_пользователя, и пользователь будет создан.
  2. userdel. Удаляет учётную запись и файлы пользователя.
  3. usermod. Изменяет учётную запись пользователя. Может переместить домашнюю папку пользователя или назначить дату, когда учётная запись будет заблокирована.
  4. passwd. Изменяет пароли учётных записей. Обычный пользователь может изменить пароль только своей учётной записи, суперпользователь может изменить пароль любой учётной записи.

Команды Linux для управления сетью

  1. ip. Многофункциональная команда для работы с сетью. Команда ip address show выводит сведения о сетевых адресах, ip route управляет маршрутизацией и так далее. Давая команды ip link set ethX up, ip link set ethX down, можно включать и выключать соединения. У команды ip много применений, так что перед её использованием лучше ознакомиться с руководством или ввести ip --help
  2. ping. Показывает, подключены ли вы к сети, и помогает определить качество связи.

И ещё кое-что

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

  1. cowsay что_угодно. Корова произнесёт то, что вы ей скажете.
  2. fortune | cowsay. Корова выдаст умную (или не очень) мысль или цитату.
  3. cowsay -l. Выводит список всех животных, которые могут быть отображены в терминале. Если вы вдруг не любите коров.
  4. fortune | cowsay -f животное_из_списка. Животное на ваш выбор начинает сыпать цитатами, иногда уместными.
  5. sudo apt-get install fortunes fortune-mod fortunes-min fortunes-ru. Заставит весь зоопарк говорить по-русски. Без этого животные цитируют Твена и Уайльда в оригинале.

Это далеко не все команды Linux. Если вам нужно узнать в деталях параметры и способы применения команд Linux, вы можете воспользоваться встроенным руководством. Наберите man ваша_команда или ваша_команда --help.

Типы файлов в Ubuntu | Русскоязычная документация по Ubuntu

Начинающим пользователям Ubuntu зачастую нелегко привыкнуть к некоторой специфике обращения с файлами в этой системе. Однако на самом деле всё крайне просто и очень элегантно, в этой статье я постараюсь объяснить все тонкости, чтобы потом при использовании системы вы не удивлялись некоторым непонятным с первого взгляда вещам.

Названия файлов и папок

Я уже упоминал, что в Linux все имена файлов являются регистрозависимыми, то есть вы спокойно можете создать в одном каталоге два файла с одинаковыми именами, но записанными в различных регистрах, например, Ubuntu.txt и ubuntu.txt.

Кроме того, я так же говорил, что вы можете использовать в именах файлов абсолютно любые символы, которые пожелаете, кроме прямого слеша /1), однако в силу некоторых причин я бы не рекомендовал использовать следующие символы: \ < > *, а также символы переноса строки и табуляции. Вы можете подписывать свои файлы китайскими иероглифами, рунами, греческими буквами и вообще чем угодно, если вам конечно будет удобно использовать такие имена2).

Ну и напоследок ещё раз напомню, что разделителем каталогов в пути к файлу в Linux всегда является символ /, в отличие от Windows, в которой используется \.

Доступ к файлам

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

Содержимое и расширение файлов

Если вы пользовались раньше операционными системами Windows, то вы скорее всего привыкли к тому, что тип файла определяется его расширением (последняя часть имени файла после точки). Например, файл «Голубой ледопад.mp3» — это музыка в формате mp33), а «Урания.txt» — это текстовый файл4). На самом деле всё немного не так, расширение — это всего лишь часть имени файла, которое никак не зависит от собственно содержимого, и тип файла обычно определяется по-другому5). Например, перейдите в Ubuntu в какую-нибудь папку с mp3 файлами и переключитесь на режим отображения списком6). В колонке «Тип» рядом с mp3 файлами вы увидите «аудио MP3»:

Теперь переименуйте любой файл, приписав ему вместо mp3 расширение ??.

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

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

Кстати, в Ubuntu есть мощная утилита определения типа файла, которая вообще не смотрит на имя и расширение, а пытается идентифицировать файл только по содержимому. Она бывает полезна, когда файл по каким-либо причинам не открывается, поскольку позволяет убедиться, что в нём содержаться данные именно того типа, которого вы и ожидаете там увидеть. Утилита эта консольная и называется file. Вот что она говорит о переименованном в текстовый документ аудио в формате mp3:

Обмануть утилиту file практически невозможно, а знает она о большинстве используемых форматов файлов.

Исполняемые файлы

В вопросах исполняемых файлов, то есть, если по простому, обычных программ, Ubuntu кардинально отличается от Windows. В Windows исполняемые файлы имеют расширение exe (в основном), а внутри представляют из себя нечитаемый набор байтов. А в Ubuntu исполняемым может быть даже текстовый файл. Сразу скажу, что exe — это программы для Windows и в Ubuntu они не работают без Wine (приложения для запуска исполняемых файлов Windows в Linux), но вообще говоря и в Wine они работают далеко не всегда.

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

Характерным примером необычных с первого взгляда исполняемых файлов Linux являются так называемые скрипты. Скрипты — это обычные текстовые файлы, содержащие набор инструкций для программы-интерпретатора, которая занимается собственно выполнением скриптов. Так вот, если на скрипте установлено свойство исполняемости, то это программа, которую можно запустить обычным образом, а если не установлено — то это всего лишь текстовый файл. То есть сделать файл исполняемым или же наоборот, убрать возможность его выполнения, можно изменением всего одного его свойства.

Мало того, на самом деле это магическое свойство-переключатель исполняемости является одним из трёх прав доступа, о которых я мельком упоминал в предыдущей статье. Я говорил, что у каждого файла есть три группы прав доступа — для пользователя-владельца, для группы-владельца и для всех остальных, каждая группа состоит в свою очередь из трёх прав: на чтение, модифицирование и выполнение. Так вот, право на выполнение и является тем самым волшебным переключателем исполняемости.

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

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

Текстовые файлы

Текстовые файлы в Ubuntu повсюду. Все настройки хранятся в виде текстовых файлов, исходные коды всех программ представляют из себя текстовые файлы, многие программы в Ubuntu являются на самом деле скриптами, то есть тоже текстовыми файлами. И естественно Ubuntu умеет работать с текстовыми файлами как угодно. И этой темы даже не пришлось бы касаться, если бы не одна проблема операционных систем Windows. Дело в том, что в Windows до сих пор кое-где ещё используется устаревший в 90-х прошлого столетия способ сохранения обычного текста, в частности, в текстовых файлах8).

На самом деле большинство файлов откроется в стандартном текстовом редакторе Ubuntu без проблем9), но всё же иногда попадаются файлы, которые отображаются «кракозябрами». В этом случае необходимо немного помочь Gedit и указать кодировку файла вручную. Для этого закройте в редакторе вкладку с нечитаемым файлом, затем выберите в меню программы пункт «Открыть», найдите свой файл и обратите внимание на поле «Кодировка символов», находящееся внизу диалогового окна открытия. В этом поле необходимо указать нужную кодировку, после чего файл откроется уже в пригодном для чтения виде. Кстати, рекомендую такие файлы сразу сохранять в utf-8, дабы в дальнейшем не возникало с ними проблем.

Существуют и более лёгкие способы работы с кодировками, например, плагин для Gedit, позволяющий менять кодировку у открытых файлов без необходимости их переоткрывания. Кроме того, существуют утилиты для автоматического перекодирования файлов в utf8, например, enca. Можно также управлять механизмом автоопределения кодировки в Gedit, это делается через редактор конфигурации, про который я немного расскажу в одной из последних статей.

Напоследок хочется сказать, что очень рекомендуется так или иначе перевести всю текстовую информацию на использование utf8, поскольку фактически только эта кодировка нормально распознаётся везде и всегда, а в будущем скорее всего только она и будет использоваться.

Аудиофайлы

В случае с аудиофайлами также существует проблема с кодировками, только проявляется она в тегах. К сожалению, некоторые популярные Windows-программы редактирования тегов как и текстовые редакторы до сих пор используют устаревшую кодировку. Некоторые плееры Ubuntu поддерживают указание кодировки воспроизводимых файлов, однако гораздо предпочтительней обработать всю вашу медиатеку специальными программами, которые автоматически приведут все теги в нормальный вид, дабы в дальнейшем не было проблем. Самой популярной программой такого рода является EasyTag, она доступна в стандартных репозиториях, так что почти сразу после прочтения следующей статьи вы сможете ей воспользоваться.

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

Изменение ассоциаций файлов с приложениями

Когда вы немного освоитесь в Ubuntu, у вас возможно возникнет желание познакомиться с доступными в изобилии в репозиториях программами. И вскоре после того, как вы выберите из бесчисленного множества альтернатив подходящие для себя приложения, перед вами скорее всего встанет вполне закономерный вопрос: а как заставить определённые типы файлов открываться в установленных вами программах, а не в доступных по умолчанию?

Ответ на него весьма прост. Нажмите правой клавишей мыши на любом файле нужного типа, выберите в появившемся меню пункт «Свойства» и в открывшемся окне перейдите на вкладку «Открывать в программе»:

В списке будут содержаться все приложения, которые сообщили Ubuntu о поддержке ими выбранного типа файлов. Ну а отмечена будет программа, используемая по умолчанию. Вам останется только выбрать нужное приложение и закрыть окно, после чего файлы указанного типа начнут открываться по умолчанию в выбранном вами приложении. То есть если вы хотите, например, чтобы фильмы в формате avi открывались в установленном вами VLC, а не в медиапроигрывателе Totem, то вам всего лишь надо в свойствах любого avi файла отметить VLC в качестве приложения по умолчанию.

Кстати, вы легко можете включить свои приложения в список, нажав на кнопку «Добавить» внизу окна и выбрав одну из установленных в системе программ или введя свою команду запуска. Таким образом вы можете настроить ассоциации с любыми приложениями для всех используемых вами типов файлов.

Однако у описанного механизма есть одна небольшая проблема: чтобы изменить привязку к приложению для определённого типа файлов вам необходимо иметь файл нужного типа. Просто же посмотреть и изменить список всех используемых в системе ассоциаций по умолчанию нельзя. К счастью, подобный функционал доступен в уже упоминавшейся утилите Ubuntu Tweak, так что если вы хотите изменить ассоциации сразу для большого количества типов файлов, то советую вам использовать именно её.

В качестве заключения

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

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

Поскольку мы уже знаем, что в Linux все является файлом, в том числе и устройства.

Администратор Linux должен выполнять действия по созданию файлов несколько раз (это может быть в 20 или 50 раз или более, это зависит от их среды) в день.

Перейдите по следующему URL-адресу, если вы хотите создать файл определенного размера в Linux:

Создаем файл произвольного размера Linux / Windows

Это очень важно. насколько эффективно мы создаем файл.

Почему я говорю эффективно?

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

Это сэкономит вам много времени.

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

Здесь я включаю несколько способов создания файла в Linux.

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

Вам не нужно устанавливать ни одну из следующих команд, потому что все эти команды были установлены как часть основных утилит Linux, за исключением команды nano.

Как создать файл в Linux, используя символ перенаправления (>)?

Стандартный символ перенаправления позволяет нам создавать пустой файл размером 0 КБ в Linux.

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

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

Но это не позволит вам вводить текст при создании файла.

Тем не менее, это очень просто и будет полезно для ленивых администраторов.

Для этого просто введите символ перенаправления, а затем имя файла, которое вы хотите.

$ > daygeek.txt

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

$ ls -lh daygeek.txt 
-rw-rw-r-- 1 daygeek daygeek 0 Feb  4 02:00 daygeek.txt

Как создать файл в Linux с помощью команды touch?

Команда touch используется для обновления времени доступа и модификации каждого ФАЙЛА к текущему времени.

Создайте новый файл, если его не существует.

Кроме того, эта команда не позволяет вводить текст при создании файла.

По умолчанию он создает пустой файл размером 0 КБ.

$ touch daygeek1.txt

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

$ ls -lh daygeek1.txt 
-rw-rw-r-- 1 daygeek daygeek 0 Feb  4 02:02 daygeek1.txt

Как создать файл в Linux с помощью команды echo?

echo — это встроенная команда, встречающаяся в большинстве операционных систем.

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

Это хорошая команда, которая позволяет пользователям вводить текст при создании файла.

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

$ echo "itisgood - feel it cool" > daygeek2.txt

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

$ ls -lh daygeek2.txt 
-rw-rw-r-- 1 daygeek daygeek 49 Feb  4 02:04 daygeek2.txt

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

$ cat daygeek2.txt
itisgood - feel it cool

Если вы хотите добавить содержимое в тот же файл, используйте символ двойного перенаправления (>>).

Как создать файл в Linux с помощью команды printf?

Команда printf также работает так же, как и команда echo.

Команда printf в Linux используется для отображения заданной строки в окне терминала. printf может иметь спецификаторы формата, escape-последовательности или обычные символы.

$ printf "test\n" > daygeek3.txt

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

$ ls -lh daygeek3.txt 
-rw-rw-r-- 1 daygeek daygeek 48 Feb  4 02:12 daygeek3.txt

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

$ cat daygeek3.txt 
test

Если вы хотите добавить содержимое в тот же файл, используйте символ двойного перенаправления (>>).

$ printf "test2" >> daygeek3.txt

Вы можете просмотреть добавленный контент из файла с помощью команды cat.

$ cat daygeek3.txt 
test
test2

Как создать файл в Linux с помощью команды cat?

Эта команда очень часто используется в Linux для чтения данных из файла.

cat — одна из наиболее часто используемых команд в Unix-подобных операционных системах.

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

$ cat > daygeek4.txt 
test

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

$ ls -lh daygeek4.txt 
-rw-rw-r-- 1 daygeek daygeek 74 Feb  4 02:18 daygeek4.txt

Как создать файл в Linux с помощью команды vi / vim?

Vim — текстовый редактор, совместимый с Vi.

Он может быть использован для редактирования всех видов простого текста.

Он особенно полезен для редактирования программ.

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

$ vi daygeek5.txt

test

Как создать файл в Linux с помощью команды nano?

Nano’s — это еще один редактор, улучшенный бесплатный клон Pico.

Nano — маленький и дружелюбный редактор.

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

$ nano daygeek6.txt

test

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

$ ls -lh daygeek6.txt 
-rw-rw-r-- 1 daygeek daygeek 148 Feb  4 02:26 daygeek6.txt

Как создать файл в Linux с помощью команды head?

Команда head используется для вывода первой части файлов.

По умолчанию он выводит первые 10 строк каждого ФАЙЛА на стандартный вывод. С более чем одним ФАЙЛОМ, перед каждым заголовком указывается имя файла.

$ head -c 0K /dev/zero > daygeek7.txt

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

$ ls -lh daygeek7.txt 
-rw-rw-r-- 1 daygeek daygeek 0 Feb  4 02:30 daygeek7.txt

Как создать файл в Linux с помощью команды tail?

Команда tail используется для вывода последней части файлов.

По умолчанию он печатает первые 10 строк каждого ФАЙЛА на стандартный вывод.

С более чем одним ФАЙЛОМ, перед каждым заголовком указывается имя файла.

$ tail -c 0K /dev/zero > daygeek8.txt

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

$ ls -lh daygeek8.txt 
-rw-rw-r-- 1 daygeek daygeek 0 Feb  4 02:31 daygeek8.txt

Как создать файл в Linux с помощью команды truncate?

Команда truncate используется для сжатия или расширения размера файла до указанного размера.

$ truncate -s 0K daygeek9.txt

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

$ ls -lh daygeek9.txt 
-rw-rw-r-- 1 daygeek daygeek 0 Feb  4 02:37 daygeek9.txt

В этой статье я выполнил всего 10 команд, чтобы проверить это. Все вместе в одном выводе.

$ ls -lh daygeek*
-rw-rw-r-- 1 daygeek daygeek   0 Feb  4 02:02 daygeek1.txt
-rw-rw-r-- 1 daygeek daygeek  74 Feb  4 02:07 daygeek2.txt
-rw-rw-r-- 1 daygeek daygeek  74 Feb  4 02:15 daygeek3. txt
-rw-rw-r-- 1 daygeek daygeek 148 Feb  4 02:20 daygeek4.txt
-rw-rw-r-- 1 daygeek daygeek  75 Feb  4 02:23 daygeek5.txt
-rw-rw-r-- 1 daygeek daygeek 148 Feb  4 02:26 daygeek6.txt
-rw-rw-r-- 1 daygeek daygeek 148 Feb  4 02:32 daygeek7.txt
-rw-rw-r-- 1 daygeek daygeek 148 Feb  4 02:32 daygeek8.txt
-rw-rw-r-- 1 daygeek daygeek 148 Feb  4 02:38 daygeek9.txt
-rw-rw-r-- 1 daygeek daygeek   0 Feb  4 02:00 daygeek.txt

 

Поделитесь статьей:

Глава 9. Работа с файлами

Глава 9. Работа с файлами

В этой главе мы узнаем, как распознавать, создавать, удалять, копировать и перемещать файлы с помощью таких команд, как file, touch, rm, cp, mv и переименовать .

все файлы чувствительны к регистру

Файлы в Linux (или любой Unix) чувствительны к регистру . Это означает, что FILE1 отличается от file1 , а / etc / hosts отличается от / etc / Hosts (последний не существует на типичном компьютере с Linux).

На этом снимке экрана показана разница между двумя файлами, один с верхним регистром W , другой с нижним регистром w .

 paul @ laika: ~ / Linux $  ls 
winter.txt Winter.txt
paul @ laika: ~ / Linux $  cat winter.txt 
Холодно.
paul @ laika: ~ / Linux $  cat Winter.txt 
Это очень холодно! 

Каталог — это особый вид файла , но он по-прежнему (с учетом регистра!) Файл . Каждое окно терминала (например, / dev / pts / 4 ), любой жесткий диск или раздел (например, / dev / sdb1 ) и любой процесс представлены где-то в файловой системе как файл .В ходе этого курса станет ясно, что все в Linux представляет собой файл .

Утилита file определяет тип файла. Linux не использует расширения для определения типа файла. Командной строке не важно, заканчивается ли файл на . txt или .pdf. Как системный администратор, вы должны использовать команду file для определения типа файла. Вот несколько примеров типичной системы Linux.

 paul @ laika: ~ $  файл pic33.png 
рис33.png: данные изображения PNG, 3840 x 1200, 8-битный / цветной RGBA, без чересстрочной развертки
paul @ laika: файл ~ $  / etc / passwd 
/ etc / passwd: текст ASCII
paul @ laika: ~ $  файл HelloWorld.c 
HelloWorld.c: текст программы ASCII C 

Команда file использует волшебный файл, содержащий шаблоны для распознавания типов файлов. Волшебный файл находится в / usr / share / file / magic . Для получения дополнительной информации введите man 5 magic .

Интересно отметить file -s для специальных файлов, таких как / dev и / proc .

 root @ debian6 ~ #  файл / dev / sda 
/ dev / sda: специальный блок
root @ debian6 ~ #  файл -s / dev / sda 
/ dev / sda: загрузочный сектор x86; раздел 1: ID = 0x83, активный, начальный . ..
root @ debian6 ~ #  файл / proc / cpuinfo 
/ proc / cpuinfo: пусто
root @ debian6 ~ #  файл -s / proc / cpuinfo 
/ proc / cpuinfo: текст программы ASCII C ++ 

Один простой способ создать пустой файл — использовать touch . (Позже в этой книге мы увидим много других способов создания файлов.)

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

 paul @ debian7: ~  $ ls -l 
всего 0
paul @ debian7: ~ $  touch file42 
paul @ debian7: ~ $  touch file33 
paul @ debian7: ~ $  ls -l 
всего 0
-rw-r - r-- 1 пол Павел 0 15 окт 08:57 file33
-rw-r - r-- 1 пол Павел 0 15 окт 08:56 file42
paul @ debian7: ~ $ 

Команда touch может устанавливать некоторые свойства при создании пустых файлов.Можете ли вы определить, что установлено, посмотрев на следующий снимок экрана? Если нет, проверьте руководство для touch .

 paul @ debian7: ~  долл. США touch -t 200505050000 SinkoDeMayo 
paul @ debian7: ~ $  touch -t 130207111630 BigBattle.txt 
paul @ debian7: ~ $  ls -l 
всего 0
-rw-r - r-- 1 пол Поль 0 11 июля 1302 BigBattle.txt
-rw-r - r-- 1 пол Павел 0 15 окт 08:57 file33
-rw-r - r-- 1 пол Павел 0 15 окт 08:56 file42
-rw-r - r-- 1 пол Поль 0 5 мая 2005 SinkoDeMayo
paul @ debian7: ~ $ 

Если вам больше не нужен файл, удалите его с помощью rm .В отличие от некоторых графических пользовательских интерфейсов, в командной строке обычно нет корзины или корзины для восстановления файлов. Когда вы используете rm для удаления файла, файл исчезает. Поэтому будьте осторожны при удалении файлов!

 paul @ debian7: ~  долларов США 
Файл BigBattle.txt 33 файла 42 SinkoDeMayo
paul @ debian7: ~  долл. США, BigBattle.txt 
paul @ debian7: ~  долларов ls 
файл33 файл42 SinkoDeMayo
paul @ debian7: ~ $ 

Чтобы предотвратить случайное удаление файла, введите rm -i .

 paul @ debian7: ~  долларов США 
файл33 файл42 SinkoDeMayo
paul @ debian7: ~ $  RM -i file33 
rm: удалить обычный пустой файл `file33 '? да
paul @ debian7: ~  долларов США -i SinkoDeMayo 
rm: удалить обычный пустой файл `SinkoDeMayo '? п
paul @ debian7: ~  долларов ls 
file42 SinkoDeMayo
paul @ debian7: ~ $ 

По умолчанию rm -r не удаляет непустые каталоги. Однако rm принимает несколько параметров, которые позволят вам удалить любой каталог.Оператор rm -rf известен тем, что стирает все, что угодно (при условии, что у вас есть на это разрешения). Когда вы вошли в систему как root, будьте очень осторожны с rm -rf ( f означает force , а r означает рекурсивный ), поскольку root подразумевает, что разрешения к вам не применяются. Вы можете буквально случайно стереть всю файловую систему.

 paul @ debian7: ~  долларов mkdir test 
paul @ debian7: ~  долларов, тестовая версия 
rm: невозможно удалить `test ': это каталог
paul @ debian7: ~  долларов rm -rf test 
paul @ debian7: ~ $  ls test 
ls: нет доступа к тесту: нет такого файла или каталога
paul @ debian7: ~ $ 

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

 paul @ debian7: ~  долларов США 
file42 SinkoDeMayo
paul @ debian7: ~ $  cp file42 file42.copy 
paul @ debian7: ~  долларов ls 
file42 file42.copy SinkoDeMayo 

скопировать в другой каталог

Если целью является каталог, то исходные файлы копируются в этот целевой каталог.

 paul @ debian7: ~  долларов mkdir dir42 
paul @ debian7: ~ $  cp SinkoDeMayo dir42 
paul @ debian7: ~ $  ls dir42 / 
SinkoDeMayo 

Чтобы скопировать полные каталоги, используйте cp -r (опция -r заставляет рекурсивное копирование всех файлов во всех подкаталогах).

 paul @ debian7: ~  долларов США 
dir42 file42 file42.copy SinkoDeMayo
paul @ debian7: ~ $  cp -r dir42 / dir33 
paul @ debian7: ~  долларов ls 
dir33 dir42 file42 file42.copy SinkoDeMayo
paul @ debian7: ~ $  ls dir33 / 
SinkoDeMayo 

копировать несколько файлов в каталог

Вы также можете использовать cp для копирования нескольких файлов в каталог. В этом случае последний аргумент (он же цель) должен быть каталогом.

 paul @ debian7: ~ $  cp file42 file42.копировать SinkoDeMayo dir42 / 
paul @ debian7: ~ $  ls dir42 / 
file42 file42.copy SinkoDeMayo 

Чтобы запретить cp перезаписывать существующие файлы, используйте параметр -i (для интерактивного).

 paul @ debian7: ~  долл. США в копилке SinkoDeMayo file42 
paul @ debian7: ~ $  cp SinkoDeMayo file42 
paul @ debian7: ~ $  cp -i SinkoDeMayo file42 
cp: перезаписать `file42 '?  п 
paul @ debian7: ~ $ 

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

 paul @ debian7: ~  долларов США 
dir33 dir42 file42 file42.copy SinkoDeMayo
paul @ debian7: ~ $  mv file42 file33 
paul @ debian7: ~  долларов ls 
dir33 dir42 file33 file42.copy SinkoDeMayo
paul @ debian7: ~ $ 

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

переименовать каталоги с помощью mv

Для переименования каталогов можно использовать ту же команду mv .

 paul @ debian7: ~  $ ls -l 
всего 8
drwxr-xr-x 2 paul paul 4096 15 окт 09:36 dir33
drwxr-xr-x 2 paul paul 4096 15 окт 09:36 dir42
-rw-r - r-- 1 пол Павел 0 15 окт 09:38 file33
-rw-r - r-- 1 paul paul 0 15 окт, 09:16 file42.копировать
-rw-r - r-- 1 пол Поль 0 5 мая 2005 SinkoDeMayo
paul @ debian7: ~ $  mv dir33 backup 
paul @ debian7: ~ $  ls -l 
всего 8
drwxr-xr-x 2 paul paul 4096 15 октября 09:36 резервное копирование
drwxr-xr-x 2 paul paul 4096 15 окт 09:36 dir42
-rw-r - r-- 1 пол Павел 0 15 окт 09:38 file33
-rw-r - r-- 1 пол Поль 0 15 окт 09:16 file42. copy
-rw-r - r-- 1 пол Поль 0 5 мая 2005 SinkoDeMayo
paul @ debian7: ~ $ 

mv также имеет переключатель -i , аналогичный cp и rm .

этот снимок экрана показывает, что mv -i запросит разрешение на перезапись существующего файла.

 paul @ debian7: ~ $  mv -i file33 SinkoDeMayo 
mv: перезаписать `SinkoDeMayo '? 
paul @ debian7: ~ $ 

Команда rename — один из тех редких случаев, когда в книге «Основы Linux» проводится различие между дистрибутивами Linux. Почти каждая команда в части Fundamentals этой книги работает почти на каждом компьютере Linux.Но переименовать в другое.

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

Команда rename в Debian использует регулярные выражения (регулярное выражение или короткое регулярное выражение объясняется в следующей главе) для одновременного переименования нескольких файлов.

Ниже пример переименования , который заменяет все вхождения txt на png для всех имен файлов, оканчивающихся на .txt.

 пол @ debian7: ~ / test42 $  ls 
Файл abc.txt 33.txt file42.txt
paul @ debian7: ~ / test42 $  переименовать 's / \. txt / \. png /' * .txt 
paul @ debian7: ~ / test42 $  ls 
abc.png file33.png file42.png 

Этот второй пример переключает все (первые) вхождения файла в документ для всех имен файлов, оканчивающихся на .png.

 пол @ debian7: ~ / test42 $  ls 
abc.png file33.png file42.png
paul @ debian7: ~ / test42 $  переименовать s / file / document / '* .png 
paul @ debian7: ~ / test42 $  ls 
abc.png document33.png document42.png
paul @ debian7: ~ / test42 $ 

переименовать в CentOS / RHEL / Fedora

В Red Hat Enterprise Linux синтаксис переименовать немного отличается. В первом примере ниже все файлы * .conf переименовываются, заменяя любое вхождение .conf на .backup.

 [paul @ centos7 ~] $  touch one.conf two.conf three.conf 
[paul @ centos7 ~] $  переименовать .conf .backup * .conf 
[paul @ centos7 ~]  латов  долларов
одна резервная копия три резервная копия две резервная копия
[paul @ centos7 ~] $ 

Второй пример переименовывает все (*) файлы, заменяя один на ОДИН.

 [paul @ centos7 ~] $  LV 
одна резервная копия три резервная копия две резервная копия
[paul @ centos7 ~] $  переименовать в ONE * 
[paul @ centos7 ~]  латов  долларов
ОДИН. Резервная копия трех. Резервная копия двух. Резервная копия
[paul @ centos7 ~] $ 

Практика: работа с файлами

1. Перечислите файлы в каталоге / bin

2. Отобразите тип файла / bin / cat, / etc / passwd и / usr / bin / passwd.

3а. Загрузите wolf.jpg и LinuxFun. pdf с http://linux-training.be (wget http: // linux-training.be / files / studentfiles / wolf.jpg и wget http://linux-training.be/files/books/LinuxFun.pdf)

 wget http://linux-training.be/files/studentfiles/wolf.jpg
wget http://linux-training.be/files/studentfiles/wolf.png
wget http://linux-training.be/files/books/LinuxFun.pdf 

3b. Отобразите тип файла wolf.jpg и LinuxFun.pdf

3c. Переименуйте wolf.jpg в wolf.pdf (используйте mv).

3д. Отобразите тип файла wolf.pdf и LinuxFun.pdf.

4. Создайте каталог, которого коснулся ~ /, и войдите в него.

5. Создайте файлы today.txt и вчера.txt в затронутых файлах.

6. Измените дату в файле вчера.txt, чтобы она соответствовала вчерашней дате.

7. Скопируйте вчера.txt в copy.yesterday.txt

8. Переименуйте copy.yesterday.txt в kim

9. Создайте каталог с именем ~ / testbackup и скопируйте в него все файлы из ~ /, которых коснулись.

10. Используйте одну команду, чтобы удалить каталог ~ / testbackup и все файлы в нем.

11. Создайте каталог ~ / etcbackup и скопируйте все *.conf файлы из / etc в него. Вы включили все подкаталоги / etc?

12. Используйте rename, чтобы переименовать все файлы * .conf в * .backup. (если у вас есть несколько дистрибутивов, попробуйте их на всех!)

решение: работа с файлами

1. Перечислите файлы в каталоге / bin

 ls / bin 

2. Отобразите тип файла / bin / cat, / etc / passwd и / usr / bin / passwd.

 файл / bin / cat / etc / passwd / usr / bin / passwd 

3a. Загрузите wolf.jpg и LinuxFun.pdf с http://linux-training.be (wget http://linux-training.be/files/studentfiles/wolf.jpg и wget http://linux-training.be/files/books/LinuxFun.pdf)

 wget http://linux-training.be/files/studentfiles/wolf.jpg
wget http://linux-training.be/files/studentfiles/wolf.png
wget http://linux-training.be/files/books/LinuxFun.pdf 

3b. Отобразите тип файла wolf.jpg и LinuxFun.pdf

 файл wolf.jpg LinuxFun. pdf 

3c. Переименуйте wolf.jpg в wolf.pdf (используйте mv).

 mv wolf.jpg wolf.pdf 

3d. Отобразите тип файла wolf.pdf и LinuxFun.pdf.

 файл wolf.pdf LinuxFun.pdf 

4. Создайте каталог ~ /, которого коснулись, и войдите в него.

 мкдир ~ / тронулся; cd ~ / touch 

5. Создайте файлы today.txt и вчера.txt в touch.

 touch today.txt вчера.txt 

6. Измените дату в файлеterday.txt, чтобы она соответствовала вчерашней дате.

 touch -t 200810251405 вчера.txt (замените 20081025 на вчера) 

7.Скопируйте вчера.txt в copy.yesterday.txt

 cpterday.txt copy.yesterday.txt 

8. Переименуйте copy.yesterday.txt в kim

 mv copy.yesterday.txt kim 

9. Создайте каталог с именем ~ / testbackup и скопируйте все файлы из ~ /, к которым он прикоснулся.

 мкдир ~ / testbackup; cp -r ~ / touch ~ / testbackup / 

10. Используйте одну команду, чтобы удалить каталог ~ / testbackup и все файлы в нем.

 rm -rf ~ / testbackup 

11. Создайте каталог ~ / etcbackup и скопируйте все *.conf файлы из / etc в него. Вы включили все подкаталоги / etc?

 cp -r /etc/*.conf ~ / etcbackup 
 Копируются только файлы * .conf, которые находятся непосредственно в / etc /. 

12. Используйте rename, чтобы переименовать все файлы * .conf в * .backup. (если у вас доступно более одного дистрибутива, попробуйте его на всех!)

 В RHEL: коснитесь 1.conf 2.conf; переименовать резервную копию conf * .conf 
 В Debian: коснитесь 1.conf 2.conf; переименуйте команду 's / conf / backup /' * .conf 

wc в Linux с примерами

wc означает слов .Как следует из названия, он в основном используется для подсчета.

  • Он используется для определения количества строк , количества слов , байт и количества символов в файлах, указанных в аргументах файла.
  • По умолчанию отображается четырехколоночных выходных данных.
  • Первый столбец показывает количество строк, присутствующих в указанном файле, второй столбец показывает количество слов, присутствующих в файле, третий столбец показывает количество символов, присутствующих в файле, а четвертый столбец — это имя файла, которое задается в качестве аргумента.

Синтаксис:

  туалет [ОПЦИЯ] ... [ФАЙЛ] ... 
 

Рассмотрим два файла с именем state.txt и capital.txt , содержащие 5 названий штатов и столиц Индии соответственно.

  $ cat state.txt 
Андхра-Прадеш
Аруначал-Прадеш
Ассам
Бихар
Чхаттисгарх

  $ cat capital.txt 
Хайдарабад
Итанагар
Dispur
Патна
Райпур
 

Передача только одного имени файла в аргументе.

  $ туалет state.txt 
 5 7 63 state. txt
       ИЛИ ЖЕ
  $ туалет capital.txt 
 5 5 45 capital.txt
 

Передача более одного имени файла в аргументе.


$ wc state.txt capital.txt
  5 7 63 state.txt
  5 5 45 capital.txt
 10 12 108 Всего
 

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

Опции:

1. -l: Эта опция печатает количество строк , присутствующих в файле. С этой опцией команда wc отображает вывод в два столбца, 1-й столбец показывает количество строк, присутствующих в файле, а 2-й сам представляет имя файла.

  С одним именем файла 
  $ wc -l state.txt 
5 state. txt

  С несколькими именами файлов 
  $ wc -l state.txt capital.txt 
  5 состояние.текст
  5 capital.txt
 Всего 10
 

2. -w: Эта опция печатает слов , присутствующих в файле. С этой опцией команда wc отображает вывод в два столбца, 1-й столбец показывает количество слов, присутствующих в файле, а 2-й — имя файла.

  С одним именем файла
$ wc -w state.txt 
7 state.txt

  С более чем одним именем файла
$ wc -w state.txt capital.txt 
  7 state.txt
  5 столица.текст
 12 Всего
 

3. -c: Этот параметр отображает количество байтов , присутствующих в файле. С этой опцией он отображает вывод в два столбца, 1-й столбец показывает количество байтов, присутствующих в файле, а 2-й — имя файла.

  С одним именем файла
$ wc -c state.txt 
63 state.txt

  С более чем одним именем файла
$ wc -c state. txt capital.txt 
 63 state.txt
 45 capital.txt
108 общая
 

4.-m: Использование опции -m Команда «wc» отображает , количество символов из файла.

  С одним именем файла
$ wc -m state.txt 
63 state.txt

  С более чем одним именем файла
$ wc -m state.txt capital.txt 
 63 state.txt
 45 capital.txt
108 общая
 

5. -L: Команда «wc» позволяет использовать аргумент -L , его можно использовать для вывода длины самой длинной (количество символов) строки в файле.Итак, у нас самая длинная символьная строка Аруначал-Прадеш в файле state.txt и Хайдарабад в файле capital.txt . Но с этой опцией, если указано более одного имени файла, последняя строка, то есть дополнительная строка, не отображает общее количество, а отображает максимум всех значений, отображаемых в первом столбце отдельных файлов.
Примечание: Символ — это наименьшая единица информации, которая включает пробел, табуляцию и новую строку.

  С одним именем файла
$ wc -L state.txt 
17 state.txt

  С более чем одним именем файла
$ wc -L state.txt capital.txt 
 17 state.txt
 10 capital.txt
 17 общая
 

6. –version: Этот параметр используется для отображения версии wc , которая в настоящее время работает в вашей системе.

$ wc --version
wc (GNU coreutils) 8.26
Упаковано Cygwin (8.26-1)
Авторское право (C) 2016 Free Software Foundation, Inc.Лицензия GPLv3 +: GNU GPL версии 3 или новее.
Это бесплатное программное обеспечение: вы можете изменять и распространять его.
НИКАКИХ ГАРАНТИЙ в той степени, в которой это разрешено законом.

Написано Полом Рубином и Дэвидом Маккензи.
 

Приложения wc Command

1. Для подсчета всех файлов и папок, присутствующих в каталоге: Как мы все знаем, ls Команда в unix используется для отображения всех файлов и папок, присутствующих в каталоге, когда она передается по конвейеру с помощью команды wc с Параметр -l отображает количество всех файлов и папок, присутствующих в текущем каталоге.

  $ ls gfg 
a.txt
b.txt
c.txt
d.txt
e.txt
выродки
Индия

  $ ls gfg | туалет -l 
7
 

2. Отображение количества слов только для файла: Все мы знаем, что это можно сделать с помощью команды wc , имеющей параметр -w , wc -w имя_файла , но эта команда показывает вывод в два столбца один — это количество слов, а другой — имя файла.

  $ wc -w состояние.txt 
7 state.txt
 

Итак, чтобы отобразить только 1-й столбец, pipe (|) вывод команды wc -w на cut command с опцией -c . Или используйте перенаправление ввода (<).

  $ wc -w state.txt | вырезать -c1 ​​
7
      ИЛИ ЖЕ
  $ wc -w 
7
 

Автор статьи Акаш Гупта . Если вам нравится GeeksforGeeks, и вы хотели бы внести свой вклад, вы также можете написать статью, используя вклад.geeksforgeeks.org или отправьте свою статью по адресу [email protected] Смотрите, как ваша статья появляется на главной странице GeeksforGeeks, и помогайте другим гикам.

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

Начало работы с VS Code с подсистемой Windows для Linux

  • 4 минуты на чтение

В этой статье

Visual Studio Code вместе с расширением Remote — WSL позволяет использовать WSL в качестве постоянной среды разработки непосредственно из VS Code. Вы можете:

  • разработка в среде на базе Linux
  • используют специфические для Linux наборы инструментов и служебные программы
  • запускать и отлаживать приложения на базе Linux, не выходя из Windows, сохраняя при этом доступ к инструментам повышения производительности, таким как Outlook и Office
  • используйте встроенный терминал VS Code для запуска выбранного вами дистрибутива Linux
  • пользуется преимуществами функций VS Code, таких как завершение кода Intellisense, линтинг, поддержка отладки, фрагменты кода и модульное тестирование
  • легко управляйте контролем версий с помощью встроенной поддержки Git VS Code
  • запускать команды и расширения VS Code непосредственно в ваших проектах WSL
  • редактируйте файлы в вашей файловой системе Linux или смонтированной Windows (например, / mnt / c), не беспокоясь о проблемах с путями, бинарной совместимости или других проблемах между ОС

Установите VS Code и удаленное расширение WSL

  • Посетите страницу установки VS Code и выберите 32- или 64-разрядный установщик. Установите Visual Studio Code в Windows (не в файловую систему WSL).

  • Когда будет предложено Выбрать дополнительные задачи во время установки, обязательно отметьте опцию Добавить в PATH , чтобы вы могли легко открыть папку в WSL с помощью команды кода.

  • Установите пакет расширений удаленной разработки. Этот пакет расширений включает расширение Remote — WSL в дополнение к расширениям Remote — SSH и Remote — Containers, что позволяет открывать любую папку в контейнере, на удаленном компьютере или в WSL.

Важно

Чтобы установить расширение Remote-WSL, вам понадобится версия 1.35 May выпуска или более поздняя версия VS Code. Мы не рекомендуем использовать WSL в VS Code без расширения Remote-WSL, поскольку вы потеряете поддержку автозаполнения, отладки, линтинга и т. Д. Забавный факт: это расширение WSL установлено в $ HOME / .vscode / extensions (введите команда ls $ HOME \ . vscode \ extensions \ в PowerShell).

Обновите свой дистрибутив Linux

В некоторых дистрибутивах WSL Linux отсутствуют библиотеки, которые требуются серверу VS Code для запуска.Вы можете добавить дополнительные библиотеки в свой дистрибутив Linux, используя его диспетчер пакетов.

Например, чтобы обновить Debian или Ubuntu, используйте:

  sudo apt-get update
  

Чтобы добавить wget (для получения контента с веб-серверов) и CA-сертификаты (чтобы приложения на основе SSL могли проверять подлинность соединений SSL), введите:

  sudo apt-get install wget ca-сертификаты
  

Откройте проект WSL в Visual Studio Code

Из командной строки

Чтобы открыть проект из вашего дистрибутива WSL, откройте командную строку дистрибутива и введите: код.

Из VS Код

Вы также можете получить доступ к дополнительным параметрам VS Code Remote с помощью сочетания клавиш: CTRL + SHIFT + P в VS Code, чтобы открыть палитру команд. Если затем вы наберете Remote-WSL , вы увидите список доступных опций VS Code Remote, позволяющих повторно открыть папку в удаленном сеансе, указать, какой дистрибутив вы хотите открыть, и многое другое.

Расширения внутри VS Code Remote

Расширение Remote-WSL разделяет VS Code на архитектуру «клиент-сервер», при этом клиент (пользовательский интерфейс) работает на вашем компьютере с Windows, а сервер (ваш код, Git, плагины и т. Д.) Работает удаленно.

При запуске VS Code Remote выбор вкладки «Расширения» отобразит список расширений, разделенных между вашим локальным компьютером и вашим распределением WSL.

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

Некоторые расширения, такие как расширение Python или все, что обрабатывает такие вещи, как линтинг или отладка, должны устанавливаться отдельно в каждом удаленном дистрибутиве WSL. VS Code отобразит значок предупреждения ⚠ вместе с зеленой кнопкой «Установить в WSL», если у вас локально установлено расширение, которое не установлено на вашем WSL Remote.

Для получения дополнительной информации см. Документы VS Code:

  • Когда VS Code Remote запускается в WSL, сценарии запуска оболочки не запускаются. См. Эту статью о сценарии расширенной настройки среды для получения дополнительной информации о том, как запускать дополнительные команды или изменять среду.

  • Возникли проблемы с запуском VS Code из командной строки WSL? Это руководство по устранению неполадок включает советы по изменению переменных пути, устранению ошибок расширения, связанных с отсутствием зависимостей, решению проблем с окончанием строки Git, установке локального VSIX на удаленном компьютере, запуску окна браузера, блокировке порта localhost, неработающим веб-сокетам, ошибкам с сохранением данных расширения , и больше.

Установить Git (необязательно)

Если вы планируете сотрудничать с другими или разместить свой проект на сайте с открытым исходным кодом (например, GitHub), VS Code поддерживает управление версиями с помощью Git. Вкладка Source Control в VS Code отслеживает все ваши изменения и имеет стандартные команды Git (добавить, зафиксировать, нажать, тянуть), встроенные прямо в пользовательский интерфейс.

Чтобы установить Git, ознакомьтесь с настройкой Git для работы с подсистемой Windows для Linux.

Установить терминал Windows (необязательно)

Новый терминал Windows поддерживает несколько вкладок (быстрое переключение между командной строкой, PowerShell или несколькими дистрибутивами Linux), пользовательские привязки клавиш (создание собственных сочетаний клавиш для открытия или закрытия вкладок, копирование + вставка и т. Д.), смайлики ☺ и пользовательские темы (цветовые схемы, стили и размеры шрифтов, фоновое изображение / размытие / прозрачность). Дополнительные сведения см. В документации по терминалу Windows.

  1. Получите Windows Terminal в Microsoft Store: при установке через магазин обновления обрабатываются автоматически.

  2. После установки откройте Терминал Windows и выберите Настройки , чтобы настроить терминал с помощью файла profile.json .

Дополнительные ресурсы

Несколько дополнительных расширений, которые вы можете рассмотреть, включают:

  • Раскладки клавиатуры из других редакторов: эти расширения могут помочь вашей среде чувствовать себя как дома, если вы переходите с другого текстового редактора (например, Atom, Sublime, Vim, eMacs, Notepad ++ и т. Д.).
  • Синхронизация настроек: позволяет синхронизировать настройки VS Code в разных установках с помощью GitHub. Если вы работаете на разных машинах, это помогает поддерживать согласованность вашей среды на них.
  • Отладчик
  • для Chrome: после того, как вы закончите разработку на стороне сервера с Linux, вам нужно будет разработать и протестировать клиентскую сторону. Это расширение интегрирует ваш редактор VS Code со службой отладки браузера Chrome, что делает работу немного более эффективной.

Редактор VI с командами в Linux / Unix Tutorial

  • Home
  • Testing

      • Back
      • Agile Testing
      • BugZilla
      • Cucumber
      • 4
      • Тестирование
      • Назад
      • JUnit
      • LoadRunner
      • Ручное тестирование
      • Мобильное тестирование
      • Mantis
      • Почтальон
      • QTP
      • Назад
      • Центр качества RPA
      • Центр контроля качества
      • SoapUI
      • Управление тестированием
      • TestLink
  • SAP

      • Назад
      • 9047 7 ABAP
      • APO
      • Начинающий
      • Basis
      • BODS
      • BI
      • BPC
      • CO
      • Назад
      • CRM
      • Crystal Reports
      • MM Crystal Reports
      • MM Crystal Reports
      • Заработная плата
      • Назад
      • PI / PO
      • PP
      • SD
      • SAPUI5
      • Безопасность
      • Менеджер решений
      • Successfactors
      • SAP Tutorials
    SAP Назад
  • Apache
  • AngularJS
  • ASP.Нетто
  • C
  • C #
  • C ++
  • CodeIgniter
  • СУБД
  • JavaScript
  • Назад
  • Java
  • JSP
  • Kotlin
  • Linux
  • Kotlin
  • Maria
  • Kotlin MYSQL Linux. js
  • Perl
  • Назад
  • PHP
  • PL / SQL
  • PostgreSQL
  • Python
  • ReactJS
  • Ruby & Rails
  • Scala
  • SQL
  • SQL
  • SQL SQL
  • UML
  • VB.Net
  • VBScript
  • Веб-службы
  • WPF
  • Обязательно учите!

      • Назад
      • Бухгалтерский учет
      • Алгоритмы
      • Android
      • Блокчейн
      • Бизнес-аналитик
      • Создание веб-сайта
      • Облачные вычисления
      • COBOL
      • Встраиваемые системы
      • 9077 Проектирование компилятора 9077 9077 Проектирование компилятора 9077
      • Учебники по Excel
      • Программирование на Go
      • IoT
      • ITIL
      • Jenkins
      • MIS
      • Сеть
      • Операционная система
      • Назад
      • Обзоры
      • PM
      • Управление проектами Salesforce
      • SEO
      • Разработка программного обеспечения
      • VBA
      904 84
  • Большие данные

      • Назад
      • AWS
      • BigData
      • Cassandra
      • Cognos
      • Хранилище данных
      • 904 904 904 HBase77
      • MongoDB
      • NiFi
      • OBIEE
  • Команды Linux | 20 наиболее важных команд Linux

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

    Итак, я разделил эти команды на следующие сегменты;

    Команды Linux: основные команды

    Linux предоставляет CLI (интерфейс командной строки) для связи с ОС.Вот самые простые команды Linux.

    1. pwd

    Эта команда отображает текущий рабочий каталог терминала.

    синтаксис:

    $ pwd

    2. echo

    Эта команда записывает свои аргументы в стандартный вывод.

    синтаксис:

    $ echo ""

    3. su

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

    синтаксис:

    $ su

    4. su

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

    синтаксис:

    $ su <имя пользователя>

    5. sudo

    Эта команда выполняет только эту команду с привилегиями root / суперпользователя.

    синтаксис:

    $ sudo <команда>

    2ser 2ser

    8

    Команда Объяснение 9 новый пользователь

    sudo passwd <имя пользователя> Установка пароля для нового пользователя
    sudo userdel <имя пользователя> 9301 9301 Удаление пользователя sudo 91 groupadd <имя группы> Добавление новой группы
    sudo groupdel <имя группы> Удаление группы
    sudo usermod301

    8 имя_пользователя

    91 Добавление пользователя в основную группу

    6.clear

    Эта команда используется для очистки экрана терминала. В этом случае содержимое не удаляется, а только прокручивается вниз. Вы также можете очистить экран, нажав Ctrl + L на клавиатуре.

    синтаксис:

    $ clear

    Команды Linux: работа с файлами

    7. cp

    Эта команда копирует файлы и каталоги. Копия скопированного файла / каталога все еще остается в рабочем каталоге.

    синтаксис:

    $ cp {имя_файла} / pathname /

    Команда 25 930986 930986 Переход в интерактивный режим; CLI запрашивает перед перезаписью файлов
    cp -n Не перезаписывает файл
    cp -u Обновляет конечный файл, только если конечный файл отличается от исходного файла файл
    cp -R Рекурсивное копирование для копирования каталогов; Копирует даже скрытые файлы
    cp -v Подробно; Печатает информационные сообщения

    8.mv

    Эта команда перемещает файлы и каталоги из одного каталога в другой. После перемещения файл / каталог удаляется из рабочего каталога.

    синтаксис:

    $ mv {имя_файла} / путь /

    Команда 25 93098 m Переход в интерактивный режим; CLI запрашивает перед перезаписью файлов
    mv -u Обновляет конечный файл, только если исходный файл отличается от конечного файла
    mv -v Verbose; Печать исходных и конечных файлов

    9.rm

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

    синтаксис:

    $ rm {имя_файла}

    8 Удаляет даже непустые каталоги.

    Команда 00 Пояснение 00
    rm –rp Удаляет непустые каталоги, включая родительские и подкаталоги.

    10. grep

    Эта команда используется для поиска определенной строки / слова в текстовом файле. Это похоже на «Ctrl + F», но выполняется через интерфейс командной строки.

    синтаксис:

    $ grep {filename}

    соответствие поисковой строке
    Команда 000 Возвращает результаты для строк без учета регистра
    grep -n Возвращает совпадающие строки вместе с их номером строки
    grep -v возвращает результат not
    grep -c Возвращает количество строк, в которых результаты совпали со строкой поиска

    Команды Linux | Edureka

    Этот сеанс Edureka Live дает вам подробное объяснение основных команд Linux, чтобы вы могли начать использовать Linux CLI.

    11. cat

    Эта команда может читать, изменять или объединять текстовые файлы. Он также отображает содержимое файла.

    синтаксис:

    $ cat {filename}

    Команда Объяснение 298b b 000 298b 000 298b Это используется для добавления номеров строк к непустым строкам
    cat -n Это используется для добавления номеров строк ко всем строкам
    cat -s Это используется для сжатия пустых строк в одну строку
    cat –E Показать $ в конце строки

    Команды Linux: Работа с каталогами

    12.ls

    Эта команда отображает все содержимое текущего рабочего каталога.

    синтаксис:

    $ ls

    12 12
    Команда Объяснение
    000 путь после ls, содержимое в этом пути будет отображаться
    ls –l Использование флага ‘l’ выводит список всего содержимого вместе с его настройками владельца, разрешениями и отметкой времени (длинный формат)
    ls –a Использование флага «a» выводит список всего скрытого содержимого в указанном каталоге.
    ls –author . содержимое в указанном каталоге вместе с его владельцем
    ls –S Использование флага ‘a’ позволяет сортировать и перечислять все содержимое в указанном справочник по размеру
    ls *.html При использовании флага ‘*’ выводится только содержимое каталога определенного формата
    ls –lS> file.txt Использование флага ‘>’ копирует результат ls в текстовый файл

    13. cd

    Эта команда используется для изменения текущего рабочего каталога пользователя.

    синтаксис:

    $ cd / pathname /

    905 из каталога в домашний каталог
    Команда Объяснение
    cd / Изменяет каталог в корневой каталог
    cd.. Изменяет каталог на его родительский каталог
    cd ‘xx yy’ Мы указываем имя папки в кавычках, потому что в имени папки есть пробел

    14 .sort

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

    синтаксис:

    $ sort {имя_файла}

    mkdir

    Эта команда используется для создания нового каталога.

    синтаксис:

    $ mkdir {имя_директории} / путь /

    Команда Объяснение 2989 000 9306 000 298 9 флаг возвращает результаты в обратном порядке;
    sort -f флаг выполняет сортировку без учета регистра
    sort -n флаг возвращает результаты в порядке номеров 15
    Команда 000 p Создает как новый родительский каталог, так и подкаталог
    mkdir –p / {f1, f2, f3} Это используется для создания нескольких подкаталогов внутри нового родительского каталога

    16.rmdir

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

    синтаксис:

    $ rmdir {имя_директора}

    Команда 25000 25 25 Удаляет родительский и дочерний каталог.
    rmdir –pv Удаляет все родительские и подкаталоги вместе с подробным описанием.

    Команды Linux: Работа с разрешениями пользователей

    17. chmod

    Эта команда используется для изменения прав доступа к файлам и каталогам. Рассмотрим пример ниже.

    При попытке запустить вновь созданный файл с именем chmodtest.sh выдается ошибка. После изменения прав доступа к файлу с помощью указанной команды Linux он становится исполняемым.

    синтаксис:

    $ chmod <разрешения пользователя, группы и других> {имя файла}

    Разрешения, связанные с каждой цифрой, следующие.

    Число чтение запись выполнение
    0 6 — 6- 6- 6 — 0 6 — 0 6- да
    2 да
    3 3 да да 61298 9301 9301

    5 да да
    6 да да
    9 9 9306 000
    000 да

    Команды Linux: установка пакетов

    Stab Версии большинства программ уже будут доступны в репозиториях Linux.Вот команды Linux для их установки.

    18. установить пакеты

    Для системы на основе RHEL;

    синтаксис:

    $ sudo yum install имя-пакета

    Для системы на основе Debian;

    синтаксис:

    $ sudo apt-get install имя-пакета

    Для системы на основе Fedora;

    синтаксис:

    $ sudo dnf install имя-пакета

    Команды Linux: работа с заархивированными файлами

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

    19. tar

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

    синтаксис:

    $ tar –cvf tar-filename имя-исходной-папки

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

    синтаксис:

    $ tar –xvf tar-file-name

    Команды Linux: Работа с Secure Shell для удаленного доступа к машине

    20.ssh

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

    Следующая команда при запуске на подчиненном узле предоставит удаленный доступ к главному.

    синтаксис:

    $ ssh <главный IP-адрес>

    Следующая команда при запуске на главном узле предоставит удаленный доступ к подчиненному узлу.

    синтаксис:

    $ ssh

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

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *