reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced
    1
    2
    3
    4
    5
    6
    7
    8
    9
   10
   11
   12
   13
   14
   15
   16
   17
   18
   19
   20
   21
   22
   23
   24
   25
   26
   27
   28
   29
   30
   31
   32
   33
   34
   35
   36
   37
   38
   39
   40
   41
   42
   43
   44
   45
   46
   47
   48
   49
   50
   51
   52
   53
   54
   55
   56
   57
   58
   59
   60
   61
   62
   63
   64
   65
   66
   67
   68
   69
   70
   71
   72
   73
   74
   75
   76
   77
   78
   79
   80
   81
   82
   83
   84
   85
   86
   87
   88
   89
   90
   91
   92
   93
   94
   95
   96
   97
   98
   99
  100
  101
  102
  103
  104
  105
  106
  107
  108
  109
  110
  111
  112
  113
  114
  115
  116
  117
  118
  119
  120
  121
  122
  123
  124
  125
  126
  127
  128
  129
  130
llvm-strings - print strings
============================

.. program:: llvm-strings

SYNOPSIS
--------

:program:`llvm-strings` [*options*] [*input...*]

DESCRIPTION
-----------

:program:`llvm-strings` is a tool intended as a drop-in replacement for GNU's
:program:`strings`, which looks for printable strings in files and writes them
to the standard output stream. A printable string is any sequence of four (by
default) or more printable ASCII characters. The end of the file, or any other
byte, terminates the current sequence.

:program:`llvm-strings` looks for strings in each ``input`` file specified.
Unlike GNU :program:`strings` it looks in the entire input file, regardless of
file format, rather than restricting the search to certain sections of object
files. If "``-``" is specified as an ``input``, or no ``input`` is specified,
the program reads from the standard input stream.

EXAMPLE
-------

.. code-block:: console

 $ cat input.txt
 bars
 foo
 wibble blob
 $ llvm-strings input.txt
 bars
 wibble blob

OPTIONS
-------

.. option:: --all, -a

 Silently ignored. Present for GNU :program:`strings` compatibility.

.. option:: --bytes=<length>, -n

 Set the minimum number of printable ASCII characters required for a sequence of
 bytes to be considered a string. The default value is 4.

.. option:: --help, -h

 Display a summary of command line options.

.. option:: --help-list

 Display an uncategorized summary of command line options.

.. option:: --print-file-name, -f

 Display the name of the containing file before each string.

 Example:

 .. code-block:: console

  $ llvm-strings --print-file-name test.o test.elf
  test.o: _Z5hellov
  test.o: some_bss
  test.o: test.cpp
  test.o: main
  test.elf: test.cpp
  test.elf: test2.cpp
  test.elf: _Z5hellov
  test.elf: main
  test.elf: some_bss

.. option:: --radix=<radix>, -t

 Display the offset within the file of each string, before the string and using
 the specified radix. Valid ``<radix>`` values are ``o``, ``d`` and ``x`` for
 octal, decimal and hexadecimal respectively.

 Example:

 .. code-block:: console

  $ llvm-strings --radix=o test.o
      1054 _Z5hellov
      1066 .rela.text
      1101 .comment
      1112 some_bss
      1123 .bss
      1130 test.cpp
      1141 main
  $ llvm-strings --radix=d test.o
      556 _Z5hellov
      566 .rela.text
      577 .comment
      586 some_bss
      595 .bss
      600 test.cpp
      609 main
  $ llvm-strings -t x test.o
      22c _Z5hellov
      236 .rela.text
      241 .comment
      24a some_bss
      253 .bss
      258 test.cpp
      261 main

.. option:: --version

 Display the version of the :program:`llvm-strings` executable.

.. option:: @<FILE>

 Read command-line options from response file ``<FILE>``.

EXIT STATUS
-----------

:program:`llvm-strings` exits with a non-zero exit code if there is an error.
Otherwise, it exits with code 0.

BUGS
----

To report bugs, please visit <http://llvm.org/bugs/>.