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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «Командная строка Linux. ПолноС руководство». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 27

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

Π’Π°Π±Π»ΠΈΡ†Π° 11.3. Π€Π°ΠΉΠ»Ρ‹ запуска для ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… сСансов ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ

Π€Π°ΠΉΠ»

Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚

/etc/bash.bashrc

ΠžΠ±Ρ‰Π΅ΡΠΈΡΡ‚Π΅ΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ сцСнарий, настройки ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ

~/.bashrc

Π›ΠΈΡ‡Π½Ρ‹ΠΉ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ Ρ„Π°ΠΉΠ» запуска. ΠœΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΈ/ΠΈΠ»ΠΈ пСрСопрСдСлСния общСсистСмных настроСк


ЗаглянитС Π² свою систСму ΠΈ посмотритС, ΠΊΠ°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ запуска Ρƒ вас ΠΈΠΌΠ΅ΡŽΡ‚ΡΡ. ΠŸΠΎΠΌΠ½ΠΈΡ‚Π΅: ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ΠΈΠΌΠ΅Π½ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ· пСрСчислСнных Π²Ρ‹ΡˆΠ΅ начинаСтся с Ρ‚ΠΎΡ‡ΠΊΠΈ (Ρ‚Π°ΠΊΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹ ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ скрытыми), ΠΏΡ€ΠΈ использовании ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ls Π΅ΠΉ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ -a.

Π‘ Ρ‚ΠΎΡ‡ΠΊΠΈ зрСния ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ, Ρ„Π°ΠΉΠ» ~/.bashrc являСтся, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, самым Π²Π°ΠΆΠ½Ρ‹ΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ запуска, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π΅Π³ΠΎ содСрТимоС читаСтся практичСски всСгда. ΠžΠ±Ρ‹Ρ‡Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹Π΅ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ Ρ‡ΠΈΡ‚Π°ΡŽΡ‚ Π΅Π³ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ, Π° Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ² запуска для ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹Ρ… ΠΎΠ±ΠΎΠ»ΠΎΡ‡Π΅ΠΊ Π²Ρ…ΠΎΠ΄Π° написаны Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π΅Ρ‚ Ρ„Π°ΠΉΠ» ~/.bashrc.

Π§Ρ‚ΠΎ находится Π² Ρ„Π°ΠΉΠ»Π°Ρ… запуска?


Если Π·Π°Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€ΡŒ Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° .bash_profile (взятого ΠΈΠ· систСмы CentOS-4), ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅:

# .bash_profile

# Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ псСвдонимы ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

# ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠ³ΠΎ окруТСния ΠΈ запуск ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ

PATH=$PATH:$HOME/bin

export PATH

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ с #, β€” это ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ, ΠΎΠ½ΠΈ Π½Π΅ Ρ‡ΠΈΡ‚Π°ΡŽΡ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΎΠΉ, Π° ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Ρ‹ для Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊΠ°. ΠŸΠ΅Ρ€Π²Ρ‹ΠΉ интСрСсный Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ начинаСтся Π² Ρ‡Π΅Ρ‚Π²Π΅Ρ€Ρ‚ΠΎΠΉ строкС:

if [ -f ~/.bashrc ]; then

. ~/.bashrc

fi

Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ называСтся составной условной ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ, ΠΏΠΎΠ»Π½ΠΎΠ΅ описаниС ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π΄Π°Π½ΠΎ Π² части IV ΠΊΠ½ΠΈΠ³ΠΈ, Π³Π΄Π΅ обсуТдаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° языкС ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, Π° ΠΏΠΎΠΊΠ° ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ Π΅Π΅ ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ Π½Π° чСловСчСский язык:

Если Ρ„Π°ΠΉΠ» "~/.bashrc" сущСствуСт, Ρ‚ΠΎΠ³Π΄Π°

ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Ρ„Π°ΠΉΠ» "~/.bashrc" file.

Как Π²ΠΈΠ΄ΠΈΡ‚Π΅, этот Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ Π²Ρ‹Π½ΡƒΠΆΠ΄Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡƒΡŽ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΡƒ Π²Ρ…ΠΎΠ΄Π° ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ содСрТимоС Ρ„Π°ΠΉΠ»Π° .bashrc. Π‘Π»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ опСрация, выполняСмая Π² Ρ„Π°ΠΉΠ»Π΅ запуска, ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH.

ΠŸΡ€ΠΈΡ…ΠΎΠ΄ΠΈΠ»ΠΎΡΡŒ Π»ΠΈ Π²Π°ΠΌ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°Ρ‚ΡŒΡΡ Π½Π°Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ командная ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊΠΎΠΌΠ°Π½Β­Π΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ вводятся Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС? НапримСр, ΠΊΠΎΠ³Π΄Π° ΠΌΡ‹ Π²Π²ΠΎΠ΄ΠΈΠΌ ls, командная ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° Π½Π΅ обыскиваСт вСсь ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ /bin/ls (ΠΏΠΎΠ»Π½Ρ‹ΠΉ ΠΏΡƒΡ‚ΡŒ ΠΊ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ls), Π° просматриваСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ, пСрСчислСнныС Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH.

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ PATH часто (Π½ΠΎ Π½Π΅ всСгда, Π² зависимости ΠΎΡ‚ дистрибутива) устанавливаСтся Π² Ρ„Π°ΠΉΠ»Π΅ запуска /etc/profile, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:

PATH=$PATH:$HOME/bin

Π—Π΄Π΅ΡΡŒ Π² ΠΊΠΎΠ½Π΅Ρ† списка Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH добавляСтся ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ $HOME/bin. Π­Ρ‚ΠΎΡ‚ ΠΊΠΎΠ΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠ»ΡƒΠΆΠΈΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ использования ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° подстановки ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ ΠΌΡ‹ познакомились Π² Π³Π»Π°Π²Π΅ 7. Для дСмонстрации ΠΏΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

[ [email protected] ~]$ foo="This is some"

[ [email protected] ~]$ echo $foo

This is some

[ [email protected] ~]$ foo=$foo" text."

[ [email protected] ~]$ echo $foo

This is some text.

Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ этот ΠΏΡ€ΠΈΠ΅ΠΌ, ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ тСкст Π² ΠΊΠΎΠ½Π΅Ρ† содСрТимого ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

ΠŸΡ€ΠΈ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠΈ строки $HOME/bin Π² ΠΊΠΎΠ½Π΅Ρ† содСрТимого ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH происходит Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° $HOME/bin Π² список ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², Π³Π΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ поиск Π²Π²ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΊΠΎΠΌΠ°Π½Π΄. Π­Ρ‚ΠΎ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Ссли ΠΌΡ‹ Ρ€Π΅ΡˆΠΈΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² своСм домашнСм ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ для хранСния Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, командная ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° ΡƒΠΆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ²Π° ΠΊ этому. Нам останСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄Π°Ρ‚ΡŒ имя bin этому ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ.

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

МногиС дистрибутивы ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‚ настройки PATH ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ. НСкоторыС дистрибутивы Π½Π° основС Debian, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Ubuntu, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‚ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ~/bin Π²ΠΎ врСмя Π²Ρ…ΠΎΠ΄Π°, ΠΈ Ссли ΠΎΠ½ имССтся, динамичСски Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ Π΅Π³ΠΎ Π² ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ PATH.

НаконСц, Ρƒ нас ΠΎΡΡ‚Π°Π»Π°ΡΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° строка:

export PATH

Команда export ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ содСрТимоС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ PATH доступным Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ процСссам этой ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ.

ИзмСнСниС окруТСния


Π’Π΅ΠΏΠ΅Ρ€ΡŒ, зная, Π³Π΄Π΅ находятся Ρ„Π°ΠΉΠ»Ρ‹ запуска ΠΈ Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ содСрТат, ΠΌΡ‹ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΈΡ…, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ ΠΎΠΊΡ€ΡƒΠΆΠ΅Π½ΠΈΠ΅.

КакиС Ρ„Π°ΠΉΠ»Ρ‹ слСдуСт ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ?


Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ содСрТимого ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½ΠΎΠΉ PATH ΠΈΠ»ΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния слСдуСт ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Π΅ .bash_profile (ΠΈΠ»ΠΈ эквивалСнтном Π΅ΠΌΡƒ, Π² зависимости ΠΎΡ‚ дистрибутива, β€” Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Ubuntu ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ„Π°ΠΉΠ» .profile). Π’ΠΎ всСх ΠΎΡΡ‚Π°Π»ΡŒΠ½Ρ‹Ρ… случаях измСнСния Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² .bashrc. Если Π²Ρ‹ Π½Π΅ систСмный администратор ΠΈ Π²Π°ΠΌ Π½Π΅ трСбуСтся Π²Π½ΠΎΡΠΈΡ‚ΡŒ измСнСния, ΠΊΠ°ΡΠ°ΡŽΡ‰ΠΈΠ΅ΡΡ всСх ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ систСмы, измСняйтС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ„Π°ΠΉΠ»Ρ‹ Π² своСм домашнСм ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ„Π°ΠΉΠ»Ρ‹ Π² /etc, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ profile, ΠΈ Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях Π² этом Π΅ΡΡ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ смысл, Π½ΠΎ Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΠΏΠΎΠΊΠ° ΠΈΠ·Π±Π΅Π³Π°Ρ‚ΡŒ рискованных дСйствий.

ВСкстовыС Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹


Для рСдактирования (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ измСнСния) Ρ„Π°ΠΉΠ»ΠΎΠ² запуска ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ„Π°ΠΉΠ»ΠΎΠ² Π² систСмС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, которая называСтся тСкстовым Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠΌ. ВСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ тСкстовому процСссору, позволяСт Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ слова Π½Π° экранС, пСрСмСщая курсор. ΠžΡ‚ тСкстового процСссора эта ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° отличаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠΎΠΉ простого тСкста ΠΈ Π½Π΅Ρ€Π΅Π΄ΠΊΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ΠΌ особСнностСй, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ВСкстовыС Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹ β€” основной инструмСнт, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ программистами для создания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π° ΠΈ систСмными администраторами для управлСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΌΠΈ настройки систСмы.

Для Linux сущСствуСт ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ число тСкстовых Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ²; Π² вашСй систСмС ΠΏΠΎΡ‡Ρ‚ΠΈ навСрняка установлСно нСсколько ΠΈΠ· Π½ΠΈΡ…. ΠŸΠΎΡ‡Π΅ΠΌΡƒ Π±Ρ‹Π»ΠΎ создано Ρ‚Π°ΠΊ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ²? ВСроятно, ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ программистам нравится ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΈΡ…, Π° Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ программисты ΠΎΡ‡Π΅Π½ΡŒ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°ΠΌΠΈ, ΠΎΠ½ΠΈ стрСмятся Π²ΠΎΠΏΠ»ΠΎΡ‚ΠΈΡ‚ΡŒ Π² Π½ΠΈΡ… свои взгляды Π½Π° Ρ‚ΠΎ, ΠΊΠ°ΠΊ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ эти Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹.

ВСкстовыС Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹ дСлятся Π½Π° Π΄Π²Π΅ основныС ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ: с графичСским ΠΈ с тСкстовым интСрфСйсом. Оба окруТСния Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ стола, GNOME ΠΈ KDE, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ нСсколько популярных Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² с графичСским интСрфСйсом. Π’ состав GNOME Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ с Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ gedit, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² мСню GNOME ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ называСтся Text Editor (ВСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€). ВмСстС с KDE ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ распространяСтся Ρ‚Ρ€ΠΈ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° (Π² порядкС увСличСния слоТности): kedit, kwrite ΠΈ kate.

БущСствуСт мноТСство Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ² с тСкстовым интСрфСйсом. НаиболСС популяр­ныС ΠΈΠ· Π½ΠΈΡ…, с ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΡΡ‚ΠΎΠ»ΠΊΠ½Π΅Ρ‚Π΅ΡΡŒ: nano, vi ΠΈ emacs. Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ nano β€” простой Π² использовании Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€, созданный ΠΊΠ°ΠΊ Π·Π°ΠΌΠ΅Π½Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρƒ pico, поставляСмому Π² составС ΠΏΠ°ΠΊΠ΅Ρ‚Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с элСктронной ΠΏΠΎΡ‡Ρ‚ΠΎΠΉ PINE. Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ vi (Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ систСм Linux Π΅Π³ΠΎ Π·Π°ΠΌΠ΅Ρ‰Π°Π΅Ρ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° vim, Π½Π°Π·Π²Π°Π½ΠΈΠ΅ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ являСтся сокращСниСм ΠΎΡ‚ Vi IMproved (Vi ΡƒΠ»ΡƒΡ‡ΡˆΠ΅Π½Π½Ρ‹ΠΉ)) β€” Ρ‚Ρ€Π°Π΄ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ для Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… систСм. ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π½Π΅ΠΌ рассказываСтся Π² Π³Π»Π°Π²Π΅ 12. Π Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ emacs Π±Ρ‹Π» написан Π ΠΈΡ‡Π°Ρ€Π΄ΠΎΠΌ Π‘Ρ‚ΠΎΠ»Π»ΠΌΠ°Π½ΠΎΠΌ (Richard Stallman). Π­Ρ‚ΠΎ нСвСроятная, ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ срСда программирования, построСнная ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ «всС Π² ΠΎΠ΄Π½ΠΎΠΌΒ». Но, нСсмотря Π½Π° свою Π΄ΠΎΡΡ‚ΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ, ΠΎΠ½ Ρ€Π΅Π΄ΠΊΠΎ устанавливаСтся ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π² Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ систСм Linux.

ИспользованиС тСкстового Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π°


Π›ΡŽΠ±ΠΎΠΉ тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΈΠ· ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки, ввСдя имя Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π° ΠΈ имя Ρ„Π°ΠΉΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ трСбуСтся ΠΎΡ‚Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ. Если ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π½Π΅ сущСствуСт, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ Ρ€Π΅ΡˆΠΈΡ‚, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½ΠΎΠ²Ρ‹ΠΉ Ρ„Π°ΠΉΠ». НиТС приводится ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования gedit:

[ [email protected] ~]$ gedit some_file

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° запустит тСкстовый Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ gedit ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ Π² Π½Π΅Π³ΠΎ Ρ„Π°ΠΉΠ» с ΠΈΠΌΠ΅Π½Π΅ΠΌ some_file, Ссли Ρ‚Π°ΠΊΠΎΠ²ΠΎΠΉ сущСствуСт.

ВсС тСкстовыС Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Ρ‹ с графичСским интСрфСйсом ΠΈΠΌΠ΅ΡŽΡ‚ ΠΈΠ½Ρ‚ΡƒΠΈΡ‚ΠΈΠ²Π½ΠΎ понятный интСрфСйс, поэтому ΠΌΡ‹ Π½Π΅ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΈΡ… здСсь. ВмСсто этого сосрСдоточимся Π½Π° Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€Π΅ с тСкстовым интСрфСйсом nano. Π”Π°Π²Π°ΠΉΡ‚Π΅ запустим nano ΠΈ внСсСм измСнСния Π² Ρ„Π°ΠΉΠ» .bashrc. Но ΠΏΠ΅Ρ€Π΅Π΄ этим ΠΏΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎ ΠΌΠ΅Ρ€Π°Ρ… прСдостороТности. Всякий Ρ€Π°Π·, ΡΠΎΠ±ΠΈΡ€Π°ΡΡΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π°ΠΆΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ», создайтС сначала Π΅Π³ΠΎ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию. Π­Ρ‚ΠΎ обСзопасит вас, Ссли Π² процСссС рСдактирования Π²Ρ‹ Π±Π΅Π·Π½Π°Π΄Π΅ΠΆΠ½ΠΎ испортитС содСрТимоС Ρ„Π°ΠΉΠ»Π°. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Ρ€Π΅Π·Π΅Ρ€Π²Π½ΡƒΡŽ копию Ρ„Π°ΠΉΠ»Π° .bashrc, Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ:

[ [email protected] ~]$ cp .bashrc .bashrc.bak

НСваТно, ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π°Π·ΠΎΠ²Π΅Ρ‚Π΅ Ρ„Π°ΠΉΠ» с Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠΉ ΠΊΠΎΠΏΠΈΠ΅ΠΉ; просто Π΄Π°ΠΉΡ‚Π΅ Π΅ΠΌΡƒ Ρ‚Π°ΠΊΠΎΠ΅ имя, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±Ρ‹Π»ΠΎ понятно, Ρ‡Ρ‚ΠΎ это Π·Π° Ρ„Π°ΠΉΠ». НаиболСС часто для ΠΈΠΌΠ΅Π½ Ρ„Π°ΠΉΠ»ΠΎΠ² с Ρ€Π΅Π·Π΅Ρ€Π²Π½Ρ‹ΠΌΠΈ копиями ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ .bak, .sav, .old ΠΈ .orig. Π”Π°, ΠΈ Π½Π΅ Π·Π°Π±ΡƒΠ΄ΡŒΡ‚Π΅, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° cp Π±Π΅Π· Π»ΠΈΡˆΠ½ΠΈΡ… вопросов Π·Π°Ρ‚ΠΈΡ€Π°Π΅Ρ‚ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ„Π°ΠΉΠ»Ρ‹.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ, ΠΊΠΎΠ³Π΄Π° рСзСрвная копия создана, ΠΌΠΎΠΆΠ½ΠΎ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€:

[ [email protected] ~]$ nano .bashrc

ПослС запуска nano Π²Ρ‹ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π° экранС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π½ΠΎ Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½Ρƒ:

GNU nano 2.0.3 File: .bashrc

# .bashrc

# Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π³Π»ΠΎΠ±Π°Π»ΡŒΠ½Ρ‹Π΅ опрСдСлСния

if [ -f /etc/bashrc ]; then

. /etc/bashrc

fi

# ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠ΅ псСвдонимы ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ

[ Read 8 lines ]

^G Get Help^O WriteOut^R Read Fil^Y Prev Pag^K Cut Text^C Cur Pos

^X Exit ^J Justify ^W Where Is^V Next Pag^U UnCut Te^T To Spell

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

Если Π² вашСй систСмС Π½Π΅ установлСн Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ nano, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ вмСсто Π½Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€ с графичСским интСрфСйсом.