Strings (Unix): Difference between revisions

Content deleted Content added
Make first paragraph longer by merging with second
WikiCleanerBot (talk | contribs)
m v2.05b - Bot T13 CW#549 - Fix errors for CW project (Split link)
 
(3 intermediate revisions by one other user not shown)
Line 21:
| website =
}}
<code>'''strings'''</code> is a [[shellShell (computing)|shell]] [[shell (computing)|command]] that extracts [[printable character]] [[String (computer science)|strings]] from a [[computer file|file]] {{endash}} which is particular useful for analyzing the content of a [[binary file]]. By definition, a binary file contains data that is not printable text yet a binary file often does contain some printable character text {{endash}} often in relatively short sequences distributed throughout the file. These portions of the binary file can be informative as to what the file contains overall. For a [[text file]], a file containing all printable characters, the command prints the entire file content, and therefore, provides no utility over more commonly used file output commands such as <code>[[cat (Unix)|cat]]</code>.
 
The command searches for sequences of printable characters that end with a [[null-terminated string|NUL character]] but ignores any sequence that is less than a specified length or 4 characters by default. Some implementations provide options for determining what is recognized as a printable character, which is useful for finding non-[[ASCII]] and [[wide character]] text. By default, it only selects strings from the initialized and loaded sections of an object file. For other types of files, it selects strings from the whole file.
 
The command is available in [[Unix]], [[Plan 9 from Bell Labs|Plan 9]], [[Inferno (operating system)|Inferno]], and [[Unix-like]] [[operating system]]ssystems. It is part of the [[GNU Binary Utilities]] ({{mono|binutils}}), and has been implemented toin other operating systems including [[Microsoft Windows|Windows]].<ref>[[cygwin]]</ref>
 
==Example==
Using ''strings'' to print sequences of characters that are at least 8 characters long (this command prints the system's [[BIOS]] information; should be run as root):
 
The following command searches the system's [[BIOS]] for strings that are at 8 characters long:
dd if=/dev/mem bs=1k skip=768 count=256 2>[[/dev/null]] | strings -n 8 | [[less (Unix)|less]]
 
dd if=/dev/mem bs=1k skip=768 count=256 2>[[/dev/null]] | strings -n 8 | [[less (Unix)|less]]
 
==See also==