--- title: "🎹 Команда strings" date: 2024-08-17T22:45:47+03:00 draft: false tags: [linux, tips] --- ## ℹ️ strings == строки ## ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Накидаю ΠΏΡ€ΠΎΡΡ‚ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ Π½Π° Π‘ΠΈ, которая ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠ΅Ρ‚ массив символов `ololo_str` со Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ `It's unique text`, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π² консоль `GrindCore \m/`. Листинг `strings.c` ```c #include int main(int argc, char const *argv[]) { char * ololo_str = "It's unique text"; puts("GrindCore \\m/"); return 0; } ``` Π‘Π±ΠΎΡ€ΠΊΠ° ΠΈ запуск ```sh tcc -o string string.c # ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ ./string # Запуск ``` Π’Ρ‹Ρ…Π»ΠΎΠΏ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: ```text GrindCore \m/ ``` ## О `strings` Π”Π²ΠΎΠΈΡ‡Π½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Π΅ Ρ„Π°ΠΉΠ»Ρ‹, ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ строки Ρ‡ΠΈΡ‚Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠΎΠΌ тСкста. Но ΠΊΠ°ΠΊ ΠΌΡ‹ ΠΈΡ… Π²ΠΈΠ΄ΠΈΠΌ? Если ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ `cat` ΠΈΠ»ΠΈ `less`, Ρ‚ΠΎ, скорСС всСго, зависнСт ΠΎΠΊΠ½ΠΎ Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°. ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½Ρ‹Π΅ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с тСкстовыми Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, Π½Π΅ ΠΌΠΎΠ³Ρƒ ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ исполняСмыС Ρ„Π°ΠΉΠ»Ρ‹, содСрТащиС Π½Π΅ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌΡ‹Π΅ символы. _Π‘ΠΏΠΈΠ·ΠΆΠ΅Π½ΠΎ [ΠΎΡ‚ΡΡŽΠ΄Π°](https://wiki.merionet.ru/articles/kak-ispolzovat-komandu-strings-v-linux)._ ## ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ€Π°Π±ΠΎΡ‚Ρ‹ Π”Π°Π²Π°ΠΉ Π½Π°Ρ‚Ρ€Π°Π²ΠΈΠΌ `strings` Π½Π° исполняСмый Ρ„Π°ΠΉΠ» `string`? Π’Ρ‹ΠΏΠΎΠ»Π½ΡΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ: ```sh strings ./string ``` ΠΈ Π²ΠΈΠΆΡƒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚: ```text /lib64/ld-linux-x86-64.so.2 __libc_start_main puts main __gmon_start__ libc.so.6 GLIBC_2.34 GLIBC_2.2.5 libc.so.6 PTE1 It's unique text GrindCore \m/ .text .data .bss .rodata.cst4 .eh_frame .init .fini .preinit_array .init_array .fini_array .interp .dynsym .dynstr .hash .dynamic .got .rela.got .plt .gnu.version .gnu.version_r .shstrtab ``` Много всСго, Π΄Π°, Π½ΠΎ ΠΎΠ±Π΅ строки ΠΈΠ· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΠ²ΡƒΡŽΡ‚. **Π’Ρ‹Π²ΠΎΠ΄:** Π£Ρ‚ΠΈΠ»ΠΈΡ‚Π° ΠΎΡ‡Π΅Π½ΡŒ полСзная! ΠŸΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅?... ΠΌΠ½ΠΎΠ³ΠΎ. Π― Π²ΠΎΡ‚ сСгодня Π²Ρ‹Ρ‚Π°Ρ‰ΠΈΠ» ΠΈΠ· Π±ΠΈΠ½Π°Ρ€Π½ΠΈΠΊΠ° ΠΏΠ°Ρ€ΠΎΠ»ΡŒ администратора ΠΎΡ‚ устройства, ΠΊ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌΡƒ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΠ»ΠΎΡΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΈ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±Ρ‹Π»Π° ΠΎΡ‡Π΅Π½ΡŒ цСнная информация. (πŸ₯² ΡˆΡƒΡ‡Ρƒ).