Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «Командная строка LinuxΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 35

Автор Шоттс Уильям

ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ курсор Π½Π° слово Π­Ρ‚ΠΎ Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС. Π’Π²ΠΎΠ΄ΠΈΡ‚Π΅ x, ΠΏΠΎΠΊΠ° тСкст Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° прСдлоТСния Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½. Π—Π°Ρ‚Π΅ΠΌ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ нСсколько Ρ€Π°Π· ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ u, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅.

ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π•

Настоящий Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ vi ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Π½Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ самой послСднСй ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. vim ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Π½Ρƒ мноТСства ΠΊΠΎΠΌΠ°Π½Π΄.

Π’Π°Π±Π»ΠΈΡ†Π° 12.3. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ удалСния тСкста

Команда

Π£Π΄Π°Π»ΠΈΡ‚

X

Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ символ

3x

Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ символ ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π° Π½ΠΈΠΌ Π΄Π²Π° символа

dd

Π’Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку

5dd

Π’Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π·Π° Π½Π΅ΠΉ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ строки

dW

ΠžΡ‚ символа Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ слова

d$

ΠžΡ‚ символа Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки

d0

ΠžΡ‚ символа Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° строки

d^

ΠžΡ‚ символа Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π΅ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ символа Π² строкС

dG

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ„Π°ΠΉΠ»Π°

d20G

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π΄ΠΎ 20-ΠΉ строки Ρ„Π°ΠΉΠ»Π°

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Π΄Π΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ удалСния Π΅Ρ‰Π΅ Ρ€Π°Π·, Π½ΠΎ Π½Π° этот Ρ€Π°Π· Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ d. Π‘Π½ΠΎΠ²Π° установитС курсор Π½Π° слово Π­Ρ‚ΠΎ ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ dW, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ слово:

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. классно.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 2

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 3

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 4

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 5

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ d$, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° строки:

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 2

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 3

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 4

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 5

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ dG, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС ΠΎΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ„Π°ΠΉΠ»Π°:

~

~

~

~

~

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ u Ρ‚Ρ€ΠΈ Ρ€Π°Π·Π°, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ удалСния.

Π’Ρ‹Ρ€Π΅Π·Π°Π½ΠΈΠ΅, ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ вставка тСкста

Команда d Π½Π΅ просто удаляСт тСкст, ΠΎΠ½Π° Β«Π²Ρ‹Ρ€Π΅Π·Π°Π΅Ρ‚Β» Π΅Π³ΠΎ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° выполняСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° d, ΡƒΠ΄Π°Π»Π΅Π½Π½Ρ‹ΠΉ тСкст копируСтся Π² Π±ΡƒΡ„Π΅Ρ€ вставки (своСго Ρ€ΠΎΠ΄Π° Π±ΡƒΡ„Π΅Ρ€ ΠΎΠ±ΠΌΠ΅Π½Π° β€” clipboard), ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΏΠΎΠ·Π΄Π½Π΅Π΅ Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ p ΠΈ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€Π°Π²Π΅Π΅ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора ΠΈΠ»ΠΈ Π»Π΅Π²Π΅Π΅ β€” ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ P.

Команда y выполняСт ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ (yank) тСкста Π² Π±ΡƒΡ„Π΅Ρ€ вставки ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π° d. Π’ Ρ‚Π°Π±Π». 12.4 пСрСчислСны Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ комбинирования ΠΊΠΎΠΌΠ°Π½Β­Π΄Ρ‹ y с Ρ€Π°Π·Π½Ρ‹ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ пСрСмСщСния курсора.

Π’Π°Π±Π»ΠΈΡ†Π° 12.4. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ копирования тСкста

Команда

Π‘ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚

yy

Π’Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку

5yy

Π’Π΅ΠΊΡƒΡ‰ΡƒΡŽ ΠΈ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ строки

yW

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ слова

y$

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки

y0

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ Π½Π°Ρ‡Π°Π»Π° строки

y^

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ курсора Π΄ΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ Π½Π΅ΠΏΡ€ΠΎΠ±Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ символа Π² строкС

yG

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π΄ΠΎ ΠΊΠΎΠ½Ρ†Π° Ρ„Π°ΠΉΠ»Π°

y20G

ΠžΡ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки Π΄ΠΎ 20-ΠΉ строки Ρ„Π°ΠΉΠ»Π°

Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠ΅ΠΌ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ курсор Π½Π° ΠΏΠ΅Ρ€Π²ΡƒΡŽ строку ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ yy, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку. Π”Π°Π»Π΅Π΅, пСрСмСститС курсор Π² послСднюю строку (G) ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ p, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½Π½ΡƒΡŽ строку Π½ΠΈΠΆΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ:

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. Π­Ρ‚ΠΎ классно.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 2

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 3

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 4

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 5

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. Π­Ρ‚ΠΎ классно.

Π’Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ u, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅. ΠžΡΡ‚Π°Π²ΠΈΠ² курсор Π² послСднСй строкС, Π²Π²Π΅Π΄ΠΈΡ‚Π΅ P, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ тСкст Π²Ρ‹ΡˆΠ΅ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строки:

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. Π­Ρ‚ΠΎ классно.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 2

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 3

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 4

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. Π­Ρ‚ΠΎ классно.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 5

ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ y ΠΈΠ· Ρ‚Π°Π±Π». 12.4 ΠΈ посмотритС, ΠΊΠ°ΠΊ Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ p ΠΈ P. Π—Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ² экспСримСнты, Π²Π΅Ρ€Π½ΠΈΡ‚Π΅ Ρ„Π°ΠΉΠ» Π² исходноС состояниС.

ОбъСдинСниС строк

vi ΠΎΡ‡Π΅Π½ΡŒ строго относится ΠΊ ΠΏΠΎΠ½ΡΡ‚ΠΈΡŽ строки. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ΠΎΠ½ Π½Π΅ Π΄Π°Π΅Ρ‚ возмоТности ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ курсор Π² ΠΊΠΎΠ½Π΅Ρ† строки ΠΈ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ символ ΠΊΠΎΠ½Ρ†Π° строки, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ строку со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π·Π° Π½Π΅ΠΉ. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π² vi Π±Ρ‹Π»Π° Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° J (Π½Π΅ ΠΏΡƒΡ‚Π°ΠΉΡ‚Π΅ с ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ j, которая ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор Π½Π° ΠΎΠ΄Π½Ρƒ строку Π²Π½ΠΈΠ·) для объСдинСния строк.

Если ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ курсор Π² Ρ‚Ρ€Π΅Ρ‚ΡŒΡŽ строку ΠΈ ввСсти ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ J, получится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. Π­Ρ‚ΠΎ классно.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 2

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 3 Π‘Ρ‚Ρ€ΠΎΠΊΠ° 4

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 5

Поиск и замСна

Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ vi ΠΈΠΌΠ΅Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ курсор, ΠΎΠΏΠΈΡ€Π°ΡΡΡŒ Π½Π° Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ поиска. Он ΠΌΠΎΠΆΠ΅Ρ‚ это Π΄Π΅Π»Π°Ρ‚ΡŒ Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… ΠΎΠ΄Π½ΠΎΠΉ строки ΠΈΠ»ΠΈ всСго Ρ„Π°ΠΉΠ»Π°. Он ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π·Π°ΠΌΠ΅Π½Ρƒ тСкста с ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠ»ΠΈ Π±Π΅Π· подтвСрТдСния ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

Поиск Π² ΠΏΡ€Π΅Π΄Π΅Π»Π°Ρ… строки

Команда f выполняСт поиск Π² строкС ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ курсор ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ символа. НапримСр, ΠΊΠΎΠΌΠ°Π½Π΄Π° fa пСрСмСстит курсор ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ символа a Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строкС. ПослС выполнСния ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ поиска символа Π² строкС Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ, ввСдя Ρ‚ΠΎΡ‡ΠΊΡƒ с запятой.

Поиск Π²ΠΎ всСм Ρ„Π°ΠΉΠ»Π΅

Для пСрСмСщСния курсора ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ слова ΠΈΠ»ΠΈ Ρ„Ρ€Π°Π·Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° /. Она дСйствуСт Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ less, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Ρ€Π°ΡΡΠΊΠ°Π·Ρ‹Π²Π°Π»ΠΎΡΡŒ Π² Π³Π»Π°Π²Π΅ 3. ПослС Π²Π²ΠΎΠ΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ / Π² Π½ΠΈΠΆΠ½Π΅ΠΉ части экрана появится прямой слСш, вслСд Π·Π° ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π½ΡƒΠΆΠ½ΠΎ ввСсти искомоС слово ΠΈΠ»ΠΈ Ρ„Ρ€Π°Π·Ρƒ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ ENTER. ПослС этого курсор пСрСмСстится ΠΊ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌΡƒ Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΡŽ искомой строки. Поиск ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ вхоТдСния Ρ‚ΠΎΠΉ ΠΆΠ΅ строки ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ n. НапримСр:

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. Π­Ρ‚ΠΎ классно.

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 2

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 3

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 4

Π‘Ρ‚Ρ€ΠΎΠΊΠ° 5

ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚Π΅ курсор Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ строку ΠΈ Π²Π²Π΅Π΄ΠΈΡ‚Π΅

/Π‘Ρ‚Ρ€ΠΎΠΊΠ°

Π·Π°Ρ‚Π΅ΠΌ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ ENTER. ΠšΡƒΡ€ΡΠΎΡ€ пСрСмСстится Π² строку 2. Π—Π°Ρ‚Π΅ΠΌ Π²Π²Π΅Π΄ΠΈΡ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ n, ΠΈ курсор пСрСмСстится Π² строку 3. Π‘ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ n курсор Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π²Π½ΠΈΠ· ΠΏΠΎ Ρ„Π°ΠΉΠ»Ρƒ, ΠΏΠΎΠΊΠ° Π½Π΅ достигнСт послСднСго вхоТдСния искомого Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π°. Π’ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°Ρ… Π²Ρ‹ΡˆΠ΅ ΠΌΡ‹ использовали для поиска Ρ‚ΠΎΠ»ΡŒΠΊΠΎ слова ΠΈ Ρ„Ρ€Π°Π·Ρ‹, ΠΎΠ΄Π½Π°ΠΊΠΎ vi позволяСт ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ рСгулярныС выраТСния β€” ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΡ‰Π½ΠΎΠ΅ срСдство выраТСния слоТных шаблонов тСкста. ΠœΡ‹ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ обсудим рСгулярныС выраТСния Π² Π³Π»Π°Π²Π΅ 19.

Π“Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹ΠΉ поиск ΠΈ Π·Π°ΠΌΠ΅Π½Π°

Для выполнСния поиска с Π·Π°ΠΌΠ΅Π½ΠΎΠΉ (Π² vi эта опСрация называСтся подстановкой) Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ строк ΠΈΠ»ΠΈ Π²ΠΎ всСм Ρ„Π°ΠΉΠ»Π΅ vi ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ex-ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. НапримСр, Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ слово Π‘Ρ‚Ρ€ΠΎΠΊΠ° словом строка Π²ΠΎ всСм Ρ„Π°ΠΉΠ»Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ:

:%s/Π‘Ρ‚Ρ€ΠΎΠΊΠ°/строка/g

Π”Π°Π²Π°ΠΉΡ‚Π΅ Ρ€Π°Π·ΠΎΠ±ΡŒΠ΅ΠΌ эту ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π½Π° элСмСнты ΠΈ рассмотрим ΠΈΡ… ΠΏΠΎ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ (Ρ‚Π°Π±Π». 12.5).

Π’Π°Π±Π»ΠΈΡ†Π° 12.5. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ синтаксиса ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ глобального поиска с Π·Π°ΠΌΠ΅Π½ΠΎΠΉ

Π­Π»Π΅ΠΌΠ΅Π½Ρ‚

Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅

:

Π‘ΠΈΠΌΠ²ΠΎΠ» двоСточия Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‚ ex-ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ

%

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ строк, Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ поиск. % β€” сокращСниС, ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π΅Π΅ Β«ΠΎΡ‚ ΠΏΠ΅Ρ€Π²ΠΎΠΉ строки Π΄ΠΎ послСднСй». Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΌΠΎΠΆΠ½ΠΎ Π±Ρ‹Π»ΠΎ Π±Ρ‹ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² строк 1,5 (ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π² нашСм Ρ„Π°ΠΉΠ»Π΅ всСго ΠΏΡΡ‚ΡŒ строк) ΠΈΠ»ΠΈ 1,$, Ρ‡Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Β«ΠΎΡ‚ строки с Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ 1 Π΄ΠΎ послСднСй». Если Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½ строк Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½, опСрация примСняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ строкС

s

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ β€” Π² Π΄Π°Π½Π½ΠΎΠΌ случаС подстановку (substitution) ΠΈΠ»ΠΈ поиск с Π·Π°ΠΌΠ΅Π½ΠΎΠΉ

/Line/line/

Π¨Π°Π±Π»ΠΎΠ½ поиска ΠΈ тСкст Π·Π°ΠΌΠ΅Π½Ρ‹

g

ΠžΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ global (глобально), Π² Ρ‚ΠΎΠΌ смыслС, Ρ‡Ρ‚ΠΎ подстановка выполняСтся для всСх Π²Ρ…ΠΎΠΆΠ΄Π΅Π½ΠΈΠΉ искомой строки Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкС. Если элСмСнт g ΠΎΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ, опСрация Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ Π·Π°ΠΌΠ΅Π½Ρƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π²ΠΎΠ³ΠΎ вхоТдСния искомого Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Π° Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкС

ПослС выполнСния поиска с Π·Π°ΠΌΠ΅Π½ΠΎΠΉ наш Ρ„Π°ΠΉΠ» Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

БъСшь ΠΆΠ΅ Π΅Ρ‰Ρ‘ этих мягких французских Π±ΡƒΠ»ΠΎΠΊ, Π΄Π° Π²Ρ‹ΠΏΠ΅ΠΉ Ρ‡Π°ΡŽ. Π­Ρ‚ΠΎ классно.

строка 2

строка 3

строка 4

строка 5

Π’ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ подстановки ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° Π΄ΠΎΠ»ΠΆΠ½Π° Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ΄Ρ‚Π²Π΅Ρ€ΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΏΠ΅Ρ€Π΅Π΄ Π·Π°ΠΌΠ΅Π½ΠΎΠΉ. Для этого Π΄ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ символ c Π² ΠΊΠΎΠ½Π΅Ρ† ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. НапримСр: