Strings
Утилита для командной строки Windows, которая позволяет производить поиск строк в формате ANSI и Юникод в двоичных образах. Обратите внимание, что эта программа поддерживает только Windows Vista, а также более новые версии операционной системы от Microsoft.
Версии
x32/x64 (0.15 МБ)
Нет официального представителя разработчика на сайте
Стать представителем
Рейтинг
Нажмите, для быстрой оценки
Оставить отзыв
Отзывы
Похожие приложения
Alcohol 120%
Версия: 2.1.1.61
Версия: 8.91.0.4 (84.95 МБ)
Версия: 4.0 Buil (10.46 МБ)
Источник: freesoft.ru
Strings что это за программа
Библиотека сайта rus-linux.net
текстовых файлов , используя утилиты head , tail , cat , tac , more , less и strings .
Также мы познакомимся с возможностями таких инструментов с интерфейсом командной строки, как cat .
Java урок — 8.3 String методы: length, charAt, concat, toUpperCase, toLowerCase, trim
Утилита head
Вы можете использовать утилиту head для вывода первых десяти строк файла.
Утилита head также может использоваться для вывода первых n строк файла.
Кроме того, утилита head может использоваться для вывода первых n байт файла.
Утилита tail
По аналогии с утилитой head, утилита tail может использоваться для вывода последних десяти строк файла.
Вы можете передать утилите tail число, соответствующее количеству строк, которое вы хотите увидеть в выводе.
$ tail -3 count.txt шесть семь восемь
Утилита tail поддерживает и другие полезные параметры, причем некоторые из них мы будем использовать в рамках данного курса.
Утилита cat
Утилита cat является одним из наиболее универсальных инструментов операционной системы. Все, что она делает — это копирует данные из стандартного потока ввода в стандартный поток вывода. Данная утилита в комбинации с командной оболочкой позволяет реализовать мощные и разнообразные механизмы обработки данных. Воспользуемся примерами для иллюстрации этих механизмов.
Первый пример является достаточно простым и вы можете использовать рассмотренную в нем команду в повседневной работе для вывода содержимого файла на экран. В том случае, если данные из файла не умещаются на экране, будет осуществлена прокрутка до конца файла.
Объединение файлов
Имя утилиты cat является сокращенной формой слова concatenate (объединить). Одним из наиболее простых сценариев использования данной утилиты является объединение файлов в рамках файла большего объема (или полного файла).
Создание файлов
Также вы можете использовать утилиту cat для создания текстовых файлов. Введите команду cat > winter.txt , приведенную в примере ниже. После этого введите одну строку или несколько строк текста, завершая ввод каждой из строк нажатием клавиши Enter. После ввода последней строки текста нажмите и удерживайте клавишу Ctrl и одновременно с этим кратковременно нажмите клавишу d.
Строки в Pascal (string) — 09
Комбинация клавиш Ctrl+d позволяет передать исполняющемуся процессу символ окончания файла (End of File — EOF), что приведет приведет к завершению исполнения процесса cat .
Специальный маркер окончания файла
Вы можете установить специальный маркер окончания файла для утилиты cat с помощью параметра
Копирование файлов
При рассмотрении третьего примера вы можете обнаружить, что утилита cat также может использоваться для копирования файлов. Подробные пояснения относительно происходящих в этом случае процессов будут даны в главе, посвященной командной оболочке bash.
Утилита tac
Предназначение утилиты tac (в отличие от утилиты cat) может быть проиллюстрировано с помощью единственного примера.
Утилиты more и less
Утилита more может оказаться полезной в случае возникновения необходимости вывода содержимого файлов, которое не умещается на экране. Утилита more позволяет ознакомится с содержимым файла, разделенным на страницы. После открытия файла с использованием данной утилиты следует использовать клавишу «пробел» для перехода к следующей странице или клавишу q для выхода из режима просмотра содержимого файла. Некоторые пользователи предпочитают использовать утилиту less вместо утилиты more .
Утилита strings
С помощью утилиты strings вы можете осуществить вывод читаемых человеком ascii-строк, которые обнаруживаются в бинарных файлах. В приведенном ниже примере выясняется путь к бинарному файлу ls , после чего осуществляется вывод читаемых пользователем строк из этого бинарного файла (вывод сокращен).
Практическое задание: работа с содержимым файлов
1. Осуществите вывод первых 12 строк файла /etc/services .
2. Осуществите вывод последней строки файла /etc/passwd .
3. Используйте утилиту cat для создания файла с именем count.txt , содержимое которого выглядит следующим образом:
Один Два Три Четыре Пять
4. Используйте утилиту cp для создания резервной копии этого файла с именем cnt.txt .
5. Используйте утилиту cat для создания резервной копии этого файла с именем catcnt.txt .
6. Осуществите вывод содержимого файла catcnt.txt таким образом, чтобы строки из файла были выведены в обратном порядке.
7. Используйте утилиту more для вывода содержимого файла /var/log/messages .
8. Осуществите вывод читаемых пользователем строк из бинарного файла /usr/bin/passwd .
9. Используйте утилиту ls для поиска файла наибольшего размера в директории /etc .
10. Откройте два окна терминала (или вкладки) и убедитесь в том, что в каждом из окон открыта одна и та же директория. Введите команду echo это первая строка > tailing.txt в первом окне терминала, после чего выполните команду tail -f tailing.txt во втором окне терминала. Теперь перейдите в первое окно терминала и введите команду echo это вторая строка >> tailing.txt (обратите внимание на два символа >>), после чего убедитесь в том, что средствами команды tail -f во втором окне терминала выводятся обе строки. Прекратите исполнение команды tail -f с помощью сочетания клавиш Ctrl+C .
11. Используйте утилиту cat для создания файла с именем tailing.txt , в котором должны содержаться данные из самого файла tailing.txt , после которых в него должны быть добавлены данные из файла /etc/passwd .
12. Используйте утилиту cat для создания файла с именем tailing.txt , в котором должны содержаться данные из самого этого файла tailing.txt , перед которыми в него должны быть добавлены данные из файла /etc/passwd .
Корректная процедура выполнения практического задания: работа с содержимым файлов
1. Осуществите вывод первых 12 строк файла /etc/services .
head -12 /etc/services
2. Осуществите вывод последней строки файла /etc/passwd .
tail -1 /etc/passwd
3. Используйте утилиту cat для создания файла с именем count.txt , содержимое которого выглядит следующим образом:
Один Два Три Четыре Пять
cat > count.txt Один Два Три Четыре Пять (ввод должен завершаться с помощью комбинации клавиш Ctrl+d)
4. Используйте утилиту cp для создания резервной копии этого файла с именем cnt.txt .
cp count.txt cnt.txt
5. Используйте утилиту cat для создания резервной копии этого файла с именем catcnt.txt .
cat count.txt > catcnt.txt
6. Осуществите вывод содержимого файла catcnt.txt таким образом, чтобы строки из файла были выведены в обратном порядке.
tac catcnt.txt
7. Используйте утилиту more для вывода содержимого файла /var/log/messages .
more /var/log/messages
8. Осуществите вывод читаемых пользователем строк из бинарного файла /usr/bin/passwd .
strings /usr/bin/passwd
9. Используйте утилиту ls для поиска файла наибольшего размера в директории /etc .
ls -lrS /etc
10. Откройте два окна терминала (или вкладки) и убедитесь в том, что в каждом из окон открыта одна и та же директория. Введите команду echo это первая строка > tailing.txt в первом окне терминала, после чего выполните команду tail -f tailing.txt во втором окне терминала. Теперь перейдите в первое окно терминала и введите команду echo это вторая строка >> tailing.txt (обратите внимание на два символа >>), после чего убедитесь в том, что средствами команды tail -f во втором окне терминала выводятся обе строки. Прекратите исполнение команды tail -f с помощью сочетания клавиш Ctrl+C .
11. Используйте утилиту cat для создания файла с именем tailing.txt , в котором должны содержаться данные из самого файла tailing.txt , после которых в него должны быть добавлены данные из файла /etc/passwd .
cat /etc/passwd >> tailing.txt
12. Используйте утилиту cat для создания файла с именем tailing.txt , в котором должны содержаться данные из самого этого файла tailing.txt , перед которыми в него должны быть добавлены данные из файла /etc/passwd .
mv tailing.txt tmp.txt ; cat /etc/passwd tmp.txt > tailing.txt
Предыдущий раздел: | Оглавление | Следующий раздел: |
Глава 7. Работа с файлами | Глава 9. Дерево директорий Linux |
Источник: rus-linux.net
strings 2.52
strings — это утилита компании microsoft, помогающая анализировать бинарные файлы, а также файлы данных. Следует отметить, что strings по умолчанию ищет строки в формате ASCII и Unicode, возвращая последовательности длинной от трех и более символов.
Использование строк:
usage: strings [-a] [-f offset] [-b bytes] [-n length] [-o] [-q] [-s] [-u]
-a Ascii-only search (Unicode and Ascii is default)
-b Bytes of file to scan
-f File offset at which to start scanning.
-o Print offset in file string was located
-n Minimum string length (default is 3)
-q Quiet (no banner)
-s Recurse subdirectories
-u Unicode-only search (Unicode and Ascii is default)
08:58 / 5 Октября, 2018
Размер: 50 Kб
Лицензия: Free
Версия: 2.52
ОС: Windows Windows
strings — это утилита компании microsoft, помогающая анализировать бинарные файлы, а также файлы данных. Следует отметить, что strings по умолчанию ищет строки в формате ASCII и Unicode, возвращая последовательности длинной от трех и более символов.
Источник: www.securitylab.ru
Как использовать команду strings в Linux
Хотите увидеть текст внутри двоичного файла или файла данных? Команда Linux strings извлекает эти фрагменты текста, называемые «строками», за вас.
Linux полон команд, которые могут выглядеть как решения в поисках проблем. Команда strings определенно попадает в этот лагерь. Какова его цель? Есть ли смысл в команде, которая перечисляет печатаемые строки из двоичного файла?
Сделаем шаг назад. Двоичные файлы, такие как программные файлы, могут содержать строки читаемого человеком текста. Но как их увидеть? Если вы используете cat или less, у вас, скорее всего, будет зависшее окно терминала. Программы, предназначенные для работы с текстовыми файлами, плохо справляются, если через них пропускаются непечатаемые символы.
Большинство байтов в двоичном файле не читаются человеком и не могут быть напечатаны в окне терминала каким-либо смыслом. Не существует символов или стандартных символов для представления двоичных значений, не соответствующих буквенно-цифровым символам, пунктуации или пробелам. В совокупности они известны как «печатные» символы. Остальные символы — «непечатаемые».
Таким образом, попытка просмотра или поиска текстовых строк в двоичном файле или файле данных является проблемой. И здесь на помощь приходят струны. Он извлекает строки печатаемых символов из файлов так что другие команды могут использовать строки без необходимости бороться с непечатаемыми символами.
Использование команды strings
В команде strings нет ничего сложного, и ее базовое использование очень просто. Мы указываем имя файла, в котором мы хотим, чтобы строки просматривались в командной строке.
Здесь мы собираемся использовать строки в двоичном файле — исполняемом файле, называемом «jibber». Мы вводим строки, пробел, «треп» и нажимаем Enter.
strings jibber
Строки извлекаются из файла и отображаются в окне терминала.
4 лучших ftp-клиента для Linux
Установка минимальной длины строки
По умолчанию строки будут искать строки длиной от четырех символов. Чтобы установить большую или меньшую минимальную длину, используйте параметр -n (минимальная длина).
Учтите, что чем короче минимальная длина, тем выше вероятность того, что вы увидите больше мусора.
Некоторые двоичные значения имеют то же числовое значение, что и значение, представляющее печатный символ. Если два из этих числовых значений находятся рядом в файле и вы укажете минимальную длину, равную двум, эти байты будут сообщены, как если бы они были строкой.
Чтобы попросить строки использовать две как минимальную длину, используйте следующую команду.
strings -n 2 jibber
Теперь в результаты включены двухбуквенные строки. Обратите внимание, что пробелы считаются печатным символом.
Обвязка струн через меньше
Из-за длины вывода строк мы собираемся передавать его меньше. Затем мы можем пролистать файл в поисках интересующего текста.
strings jibber | less
Список теперь представлен для нас в меньшем размере, причем сначала отображается верхняя часть списка.
Использование строк с объектными файлами
Обычно файлы исходного кода программы компилируются в объектные файлы. Они связаны с файлами библиотеки для создания двоичного исполняемого файла. У нас есть объектный файл jibber, так что давайте заглянем внутрь этого файла. Обратите внимание на расширение файла «.o».
jibber.o | less
Первый набор строк помещается в восьмой столбец, если они длиннее восьми символов. Если они были обернуты, в девятом столбце будет символ «H». Вы можете распознать эти строки как операторы SQL.
Прокрутка вывода показывает, что это форматирование не используется во всем файле.
Интересно увидеть различия в текстовых строках между объектным файлом и готовым исполняемым файлом.
Поиск в определенных областях файла
Скомпилированные программы имеют внутри себя разные области, которые используются для хранения текста. По умолчанию строки ищут текст во всем файле. Это как если бы вы использовали параметр -a (all). Чтобы строки выполнялись только в инициализированных, загруженных разделах данных в файле, используйте параметр -d (data).
strings -d jibber | less
Если у вас нет веской причины, вы можете использовать настройку по умолчанию и искать по всему файлу.
Как добавить чат Facebook Messenger в Linux с помощью Pidgin IM
Печать смещения строки
Мы можем заставить строки печатать смещение от начала файла, в котором находится каждая строка. Для этого используйте параметр -o (смещение).
strings -o parse_phrases | less
Смещение указано в Восьмеричный .
Чтобы смещение отображалось в другом числовом формате, таком как десятичное или шестнадцатеричное, используйте параметр -t (основание системы счисления). После опции radix должен следовать d (десятичный ), Икс (шестнадцатеричный ) или o (восьмеричный). Использование -to аналогично использованию -o.
strings -t d parse_phrases | less
Смещения теперь печатаются в десятичном формате.
strings -t x parse_phrases | less
Смещения теперь печатаются в шестнадцатеричном формате.
Включая пробелы
strings считает, что символы табуляции и пробела являются частью найденных строк. Другие символы-пробелы, такие как символы новой строки и возврат каретки, не обрабатываются так, как если бы они были частью строки. Параметр -w (пробел) заставляет строки обрабатывать все пробельные символы, как если бы они были частью строки.
strings -w add_data | less
Мы можем видеть пустую строку в выводе, которая является результатом (невидимого) возврата каретки и символов новой строки в конце второй строки.
Мы не ограничены файлами
Мы можем использовать строки с чем угодно, что является или может создавать поток байтов.
С помощью этой команды мы можем просмотреть оперативная память (RAM) нашего компьютера.
Нам нужно использовать sudo, потому что мы обращаемся к / dev / mem. Это файл символьного устройства, который содержит образ основной памяти вашего компьютера.
sudo strings /dev/mem | less
Список — это не все содержимое вашей оперативной памяти. Из него можно извлечь только струны.
Как играть в Overwatch в Linux
Одновременный поиск во многих файлах
Подстановочные знаки можно использовать для выбора групп файлов для поиска. Символ * представляет несколько символов, а? символ представляет любой отдельный символ. Вы также можете указать несколько имен файлов в командной строке.
Мы собираемся использовать подстановочный знак и искать по всем исполняемым файлам в каталоге / bin. Поскольку список будет содержать результаты из многих файлов, мы будем использовать параметр -f (имя файла). Это напечатает имя файла в начале каждой строки. Затем мы можем увидеть, в каком файле была найдена каждая строка.
Мы передаем результаты через grep , и поиск строк, содержащих слово «Авторские права».
strings -f /bin/* | grep Copyright
Мы получаем аккуратный список заявлений об авторских правах для каждого файла в каталоге / bin с именем файла в начале каждой строки.
струны распутаны
В струнах нет ничего загадочного; это типичная команда Linux. Он делает что-то очень конкретное и делает это очень хорошо.
Это еще один винтик Linux, который действительно оживает, когда работает с другими командами. Когда вы видите, как он может находиться между двоичными файлами и другими инструментами, такими как grep, вы начинаете ценить функциональность этой немного неясной команды.
Источник: toadmin.ru