Разное — различия между версиями
Root (обсуждение | вклад) (Новая страница: «uniq cut paste grep») |
Root (обсуждение | вклад) |
||
(не показано 25 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
− | + | Команда '''cut''' вырезает заданные "поля" или символы из текстового файла и выводит их. По умолчанию она использует в качестве разделителя пробел (это можно изменить -d) и определяет все символы между двумя пробелами как поле. Затем она вырезает это поле или символ из файла и выводит его. Например, если надо вывести список всех пользователей и их командные оболочки для данной системы, можно проанализировать с помощью cut файл /etc/passwd и вывести первое и седьмое поля: | |
− | cut | + | # cut -d: -f1,7 /etc/passwd |
− | paste | + | root:/bin/bash |
− | + | daemon:/bin/sh | |
+ | bin:/bin/sh | ||
+ | |||
+ | Выборка по символам(выведем символы со 2го по 10й) | ||
+ | # cut -c 2-10 file.txt | ||
+ | |||
+ | |||
+ | Команда для принудительного приведения строк к заданной длине '''fold'''. По умолчанию длина строки составляет 80 символов. Чтобы привести строки к длине 18 символов, используем команду: | ||
+ | # echo This is a test, this is only a test. | fold -w 18 | ||
+ | This is a test, th | ||
+ | is is only a test. | ||
+ | С опцией -s, команда делает перенос строки, после последнего пустого символа до заданного значения длины | ||
+ | |||
+ | |||
+ | Утилита '''locate''' принимает в качестве параметра имя файла (или часть имени) и моментально выводит список путей до этого файла в файловой системе; альтернативой этой программе является find, но разница между ними заключается в том, что find производит поиск по файловой системе и требуется значительный период времени для получения результата, а отличие в работе этих программ состоит в том, что locate использует собственную базу данных для хранения имен файлов, в то время как find исследует директории в поисках заданного параметром командной строки имени файла. | ||
+ | # locate php.ini | ||
+ | |||
+ | |||
+ | Утилита для нумерации строк '''nl''': | ||
+ | # nl filename | ||
+ | Эта команда выводит файл в stdout (по умолчанию на экран) и помещает в начале каждой строки ее номер. nl может использовать большое количество различных стилей и форматов нумерации. | ||
+ | |||
+ | |||
+ | Команда '''paste''' выводит строки заданных текстовых документов в одной строке, разделенные табуляцией. Например, если надо просмотреть соответствующие строки двух текстовых файлов в одной строке, разделенные табуляцией, то можно использовать для этого команду: | ||
+ | # paste filename1 filename2 | ||
+ | |||
+ | |||
+ | Команда '''sort''' сортирует вывод текстовых строк в определенном порядке: | ||
+ | # sort -r file - сортировка в обратном порядке | ||
+ | # sort -k 6 - сортировка по 6ой колонке | ||
+ | |||
+ | |||
+ | Команда '''split''' разбивает файл на части: | ||
+ | # split -b 5m file - разбить на файлы по 5 Мб(5k - по 5 Кб, 5 - по 5 байт). | ||
+ | # split -l 1000 file - разбить файл на файлы по 1000 строк | ||
+ | cat filea fileb filec > file - склеить файл | ||
+ | |||
+ | |||
+ | Команда '''touch''' создаёт файл: | ||
+ | # touch filename - создать файл в текущем каталоге | ||
+ | # touch -t 200701310846 filename - создать файл с указанием метки времени, можно указать и будущую дату | ||
+ | |||
+ | |||
+ | Команда '''tr''' служит для преобразования или транслитерации. Она используется для замены одного набора символов на другой, чаще всего для преобразования регистра. Например, если вы нужно преобразовать строку символов из нижнего регистра в верхний, вводим: | ||
+ | # echo "all uppercase" | tr a-z A-Z | ||
+ | tr можно применять для многих преобразований между разными наборами символов, а также для удаления или обрезания строк. | ||
+ | |||
+ | Удалить ненужный символ, например слеш | ||
+ | # cat /etc/fstab | tr --delete / | ||
+ | |||
+ | |||
+ | Утилита '''uniq''' используется главным образом для исключения повторяющихся строк в файле. Она анализирует файл (или файлы), находит избыточные строки и выводит только одну из них ( в stdout или в файл, с помощью перенаправления): | ||
+ | # uniq name-of-text-file |
Текущая версия на 11:33, 25 ноября 2021
Команда cut вырезает заданные "поля" или символы из текстового файла и выводит их. По умолчанию она использует в качестве разделителя пробел (это можно изменить -d) и определяет все символы между двумя пробелами как поле. Затем она вырезает это поле или символ из файла и выводит его. Например, если надо вывести список всех пользователей и их командные оболочки для данной системы, можно проанализировать с помощью cut файл /etc/passwd и вывести первое и седьмое поля:
# cut -d: -f1,7 /etc/passwd root:/bin/bash daemon:/bin/sh bin:/bin/sh
Выборка по символам(выведем символы со 2го по 10й)
# cut -c 2-10 file.txt
Команда для принудительного приведения строк к заданной длине fold. По умолчанию длина строки составляет 80 символов. Чтобы привести строки к длине 18 символов, используем команду:
# echo This is a test, this is only a test. | fold -w 18 This is a test, th is is only a test.
С опцией -s, команда делает перенос строки, после последнего пустого символа до заданного значения длины
Утилита locate принимает в качестве параметра имя файла (или часть имени) и моментально выводит список путей до этого файла в файловой системе; альтернативой этой программе является find, но разница между ними заключается в том, что find производит поиск по файловой системе и требуется значительный период времени для получения результата, а отличие в работе этих программ состоит в том, что locate использует собственную базу данных для хранения имен файлов, в то время как find исследует директории в поисках заданного параметром командной строки имени файла.
# locate php.ini
Утилита для нумерации строк nl:
# nl filename
Эта команда выводит файл в stdout (по умолчанию на экран) и помещает в начале каждой строки ее номер. nl может использовать большое количество различных стилей и форматов нумерации.
Команда paste выводит строки заданных текстовых документов в одной строке, разделенные табуляцией. Например, если надо просмотреть соответствующие строки двух текстовых файлов в одной строке, разделенные табуляцией, то можно использовать для этого команду:
# paste filename1 filename2
Команда sort сортирует вывод текстовых строк в определенном порядке:
# sort -r file - сортировка в обратном порядке # sort -k 6 - сортировка по 6ой колонке
Команда split разбивает файл на части:
# split -b 5m file - разбить на файлы по 5 Мб(5k - по 5 Кб, 5 - по 5 байт). # split -l 1000 file - разбить файл на файлы по 1000 строк
cat filea fileb filec > file - склеить файл
Команда touch создаёт файл:
# touch filename - создать файл в текущем каталоге # touch -t 200701310846 filename - создать файл с указанием метки времени, можно указать и будущую дату
Команда tr служит для преобразования или транслитерации. Она используется для замены одного набора символов на другой, чаще всего для преобразования регистра. Например, если вы нужно преобразовать строку символов из нижнего регистра в верхний, вводим:
# echo "all uppercase" | tr a-z A-Z
tr можно применять для многих преобразований между разными наборами символов, а также для удаления или обрезания строк.
Удалить ненужный символ, например слеш
# cat /etc/fstab | tr --delete /
Утилита uniq используется главным образом для исключения повторяющихся строк в файле. Она анализирует файл (или файлы), находит избыточные строки и выводит только одну из них ( в stdout или в файл, с помощью перенаправления):
# uniq name-of-text-file