天天看點

linux指令之檢視動态庫中字元串-strings

strings指令是在對象檔案或者二進制檔案中查找可列印的字元串,有很多的用途,例如一個用法就是在編譯的so中定義字元串常量作為動态庫的版本号,然後就可以使用strings+grep 組合指令檢視目前編譯的so的版本号了。

輸入strings -h檢視strings指令的用法:

用法:strings [選項] [檔案]
 列印 [檔案] (預設為标準輸入) 中可列印的字元串
 選項為:
  -a - --all                Scan the entire file, not just the data section [default]
  -d --data                 Only scan the data sections in the file
  -f --print-file-name      Print the name of the file before each string
  -n --bytes=[number]       Locate & print any NUL-terminated sequence of at
  -<number>                   least [number] characters (default 4).
  -t --radix={o,d,x}        Print the location of the string in base 8, 10 or 16
  -w --include-all-whitespace Include all whitespace as valid string characters
  -o                        An alias for --radix=o
  -T --target=<BFDNAME>     Specify the binary file format
  -e --encoding={s,S,b,l,B,L} Select character size and endianness:
                            s = 7-bit, S = 8-bit, {b,l} = 16-bit, {B,L} = 32-bit
  -s --output-separator=<string> String used to separate strings in output.
  @<file>                   Read options from <file>
  -h --help                 Display this information
  -v -V --version           Print the program's version number
strings:支援的目标: elf64-x86-64 elf32-i386 elf32-iamcu elf32-x86-64 a.out-i386-linux pei-i386 pei-x86-64 elf64-l1om elf64-k1om elf64-little elf64-big elf32-little elf32-big pe-x86-64 pe-bigobj-x86-64 pe-i386 plugin srec symbolsrec verilog tekhex binary ihex
将 bug 報告到 <http://www.sourceware.org/bugzilla/>