Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ pushd ΠΈ popd

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. popd pushd. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-popd pushd. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° popd pushd

Команда pushd

Когда трСбуСтся Ρ€Π°Π±ΠΎΡ‚Π° с нСсколькими дирСкториями, Ρ‚ΠΎ использованиС Ρ‚ΠΎΠ»ΡŒΠΊΠΎ cd ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ ΡƒΠ΄ΠΎΠ±Π½ΠΎ. Π—Π΄Π΅ΡΡŒ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Π° pushd

Команда pushd создаСт стСк Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ (ΠΏΠ°ΠΏΠΎΠΊ).

Π§Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΡƒΡŽ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ Π² стСк (ΠΈ сразу ΠΆΠ΅ Π² Π½Π΅Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ), Ρ‚ΠΎ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ ΠΏΡƒΡ‚ΡŒ Π΄ΠΎ этой Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ (символ Ρ‚ΠΈΠ»ΡŒΠ΄Π°

Π² путях Π² Linux ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ домашнюю Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ):

ПослС выполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ±Π΅Π» выводятся Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, находящиСся Π² стСкС.

Π’Π°ΠΆΠ½ΠΎΠ΅ Π·Π°ΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: На Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ стСка всСгда Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π° тСкущая дирСктория. Π’ΠΎ Π΅ΡΡ‚ΡŒ, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ добавляли Π½ΠΈΠΊΠ°ΠΊΠΈΡ… Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΉ Π² стСк, Ρ‚ΠΎ Π² Π½Π΅ΠΌ всС Ρ€Π°Π²Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ тСкущая рабочая дирСктория.

Быстрый ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΊ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ Π² стСкС

ΠŸΠ΅Ρ€Π΅ΠΉΠ΄Π΅ΠΌ ΠΊ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ с индСксом 2:

Команда popd

ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ всСгда находится Π² Ρ‚ΠΎΠΉ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, которая Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ располоТСна Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ стСка.

Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π²Π»Π΅Ρ‡ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ с Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ стСка ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ, которая окаТСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ (станСт Π²Π΅Ρ€ΡˆΠΈΠ½ΠΎΠΉ стСка), ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° popd

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚:

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. popd pushd. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-popd pushd. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° popd pushd

Π•Ρ‰Π΅ ΠΏΠ°Ρ€Π° Ρ‚Ρ€ΡŽΠΊΠΎΠ²

Π£Π΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· стСка

Π§Ρ‚ΠΎΠ±Ρ‹ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΡŽ ΠΈΠ· стСка (сама дирСктория, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π½Π΅ удаляСтся) ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π°. ВмСсто 3 ΡƒΠΊΠ°ΠΆΠΈΡ‚Π΅ индСкс Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· стСка.

ΠŸΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΡƒΠ΄Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ

Если Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ pushd Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ², Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒΡΡ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя Π²Π΅Ρ€Ρ…Π½ΠΈΠΌΠΈ дирСкториями Π² стСкС. ΠŸΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Ρ‚ΡƒΠ΄Π° ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΠΌΠ΅ΠΆΠ΄Ρƒ Π²Π΅Ρ€Ρ…Π½ΠΈΠΌΠΈ дирСкториями, ΠΎΡΡ‚Π°Π»ΡŒΠ½Π°Ρ Ρ‡Π°ΡΡ‚ΡŒ стСка Π½Π΅ мСняСтся.

ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: БостояниС стСка хранится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ сСссии Ρ‚Π΅Ρ€ΠΌΠΈΠ½Π°Π»Π°.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Pushd ΠΈ Popd Π² Linux

Pushd and Popd Commands in Linux

Π‘Ρ‚Π΅ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²

Π‘Ρ‚Π΅ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² прСдставляСт собой список ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ Ρ€Π°Π½Π΅Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Π»ΠΈΡΡŒ. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ dirs ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² стСк ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ pushd ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ popd ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

Команда pwd позволяСт ΡƒΠ·Π½Π°Ρ‚ΡŒ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π²Ρ‹ сСйчас Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ.

ΠŸΡ€ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ Tab ΠΊΠ»Π°Π²ΠΈΡˆΡƒ для автозаполнСния ΠΈΠΌΠ΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ косой Ρ‡Π΅Ρ€Ρ‚Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π½Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

pushd ΠΊΠΎΠΌΠ°Π½Π΄Π°

Бинтаксис для pushd ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

Π’ случаС успСха указанная Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ².

ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ pushd ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. Π‘ΠΈΠΌΠ²ΠΎΠ» Ρ‚ΠΈΠ»ΡŒΠ΄Ρ‹

ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ домашний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

pushd сначала сохраняСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ стСка, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ всСгда Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ стСка, послС измСнСния Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ стСка, Π½ΠΎ Π½Π΅ сохраняСтся Π² стСкС. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ pushd Π΅Π³ΠΎ. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ cd для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка Π±ΡƒΠ΄Π΅Ρ‚ потСрян,

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² стСк:

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ всСгда находится Π²Π²Π΅Ρ€Ρ…Ρƒ) Π½Π΅ измСняСтся, /usr/local ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ добавляСтся Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΡ‚ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ стСка:

Π§Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ индСксированный список стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π½Π° /var/www ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ стСка, Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ….

popd ΠΊΠΎΠΌΠ°Π½Π΄Π°

Команда popd ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ:

ΠŸΡ€ΠΈ использовании Π±Π΅Π· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² popd удаляСт Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈΠ· стСка ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Если Π²Ρ‹ запуститС popd ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, ΠΎΠ½Π° ΡƒΠ΄Π°Π»ΠΈΡ‚ /opt ΠΈΠ· стСка ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅Ρ‚ Π² /usr/local ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³:

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

-n ΠžΠΏΡ†ΠΈΡ подавляСт ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ удаляСт Π²Ρ‚ΠΎΡ€ΠΎΠΉ элСмСнт ΠΈΠ· стСка:

Π’Ρ‹Π²ΠΎΠ΄

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ cd ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ для пСрСмСщСния ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ссли Π²Ρ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, pushd ΠΈ popd ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ повысят Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Pushd ΠΈ Popd Π² Linux

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. Komandy Pushd i Popd v Linux. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-Komandy Pushd i Popd v Linux. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Komandy Pushd i Popd v Linux

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ ΠΌΡ‹ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ pushd ΠΈ popd для пСрСмСщСния Π΄Π΅Ρ€Π΅Π²Π° ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² вашСй систСмы.

Π‘Ρ‚Π΅ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²

Π‘Ρ‚Π΅ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² прСдставляСт собой список ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ², ΠΊ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌ Π²Ρ‹ Ρ€Π°Π½Π΅Π΅ ΠΎΠ±Ρ€Π°Ρ‰Π°Π»ΠΈΡΡŒ. Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ dirs. ΠšΠ°Ρ‚Π°Π»ΠΎΠ³ΠΈ Π΄ΠΎΠ±Π°Π²Π»ΡΡŽΡ‚ΡΡ Π² стСк ΠΏΡ€ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π΅ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ pushd ΠΈ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ΡΡ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ popd.

Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ всСгда находится Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ являСтся ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠΌ (ΠΏΠ°ΠΏΠΊΠ°), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π² настоящСС врСмя Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ взаимодСйствуСтС с ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой, Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ.

Команда pwd позволяСт ΡƒΠ·Π½Π°Ρ‚ΡŒ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π²Ρ‹ сСйчас Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ.

ΠŸΡ€ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Tab для автозаполнСния ΠΈΠΌΠ΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ косой Ρ‡Π΅Ρ€Ρ‚Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π½Π΅ являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ.

pushd ΠΈ popd, ΡΠ²Π»ΡΡŽΡ‚ΡΡ встроСнными функциями ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, ΠΈ Π΅Π³ΠΎ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ слСгка ΠΎΡ‚Π»ΠΈΡ‡Π°Ρ‚ΡŒΡΡ ΠΎΡ‚ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ ΠΊ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ΅. ΠœΡ‹ рассмотрим Π²ΡΡ‚Ρ€ΠΎΠ΅Π½Π½ΡƒΡŽ Π²Π΅Ρ€ΡΠΈΡŽ ΠΊΠΎΠΌΠ°Π½Π΄ Bash.

Команда pushd

Бинтаксис pushdΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

НапримСр, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ части стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ Π½Π΅ΠΌΡƒ /var/www, Π²Π²Π΅Π΄ΠΈΡ‚Π΅:

Π’ случаС успСха указанная Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ².

ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΌΡ‹ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ pushd. Π‘ΠΈΠΌΠ²ΠΎΠ» Ρ‚ΠΈΠ»ΡŒΠ΄Ρ‹

ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ домашний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

pushd сначала сохраняСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ стСка, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ ΠΊ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡƒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Ρƒ. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ всСгда Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ стСка, послС измСнСния Π½ΠΎΠ²Ρ‹ΠΉ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΏΠΎΠΏΠ°Π΄Π°Π΅Ρ‚ Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ стСка, Π½ΠΎ Π½Π΅ сохраняСтся Π² стСкС. Π§Ρ‚ΠΎΠ±Ρ‹ ΡΠΎΡ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ, Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ pushd. Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ cd для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ элСмСнт стСка Π±ΡƒΠ΄Π΅Ρ‚ потСрян.

Π”Π°Π²Π°ΠΉΡ‚Π΅ Π΄ΠΎΠ±Π°Π²ΠΈΠΌ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² стСк:

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ всСгда находится Π²Π²Π΅Ρ€Ρ…Ρƒ) Π½Π΅ измСняСтся, ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /usr/local добавляСтся Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΎΡ‚ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ стСка:

Π§Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Π΄Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅ΠΌ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ индСксированный список стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /var/www ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π½Π° Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ стСка, Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ….

ΠŸΡ€ΠΈ подсчСтС свСрху Π²Π½ΠΈΠ· (ΠΈΠ»ΠΈ слСва Π½Π°ΠΏΡ€Π°Π²ΠΎ) индСкс ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Ρ€Π°Π²Π΅Π½ 2.

ΠŸΡ€ΠΈ подсчСтС снизу Π²Π²Π΅Ρ€Ρ… индСкс ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° /var/www Ρ€Π°Π²Π΅Π½ 1.

ΠŸΡ€ΠΈ использовании Π±Π΅Π· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² pushd ΠΏΠ΅Ρ€Π΅ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π΄Π²Π΅ Π²Π΅Ρ€Ρ…Π½ΠΈΠ΅ Π΄ΠΈΡ€Π΅ΠΊΡ‚ΠΎΡ€ΠΈΠΈ ΠΈ Π΄Π΅Π»Π°Π΅Ρ‚ Π½ΠΎΠ²ΡƒΡŽ Π²Π΅Ρ€ΡˆΠΈΠ½Ρƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ. Π­Ρ‚ΠΎ Ρ‚ΠΎ ΠΆΠ΅ самоС, Ρ‡Ρ‚ΠΎ ΠΈ ΠΏΡ€ΠΈ использовании ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ cd.

Команда popd

Команда popd ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Ρ„ΠΎΡ€ΠΌΡƒ:

ΠŸΡ€ΠΈ использовании Π±Π΅Π· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² popd удаляСт Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈΠ· стСка ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Если Π²Ρ‹ запуститС popdΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, ΠΎΠ½Π° ΡƒΠ΄Π°Π»ΠΈΡ‚ /opt ΠΈΠ· стСка ΠΈ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅Ρ‚ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /usr/local:

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cd для пСрСмСщСния ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Однако, Ссли Π²Ρ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ pushd ΠΈ popd повысят Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ.

Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ вопросы ΠΈΠ»ΠΈ ΠΎΡ‚Π·Ρ‹Π²Ρ‹, Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

Если Π²Ρ‹ нашли ΠΎΡˆΠΈΠ±ΠΊΡƒ, поТалуйста, Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚Π΅ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ тСкста ΠΈ Π½Π°ΠΆΠΌΠΈΡ‚Π΅ Ctrl+Enter.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ Pushd ΠΈ Popd Π² Linux

pushd ΠΈ popd β€” это ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π²Π°ΠΌ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ со стСком ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ Π² Linux ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… Unix-ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах. Π₯отя pushd ΠΈ popd β€” ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠΎΡ‰Π½Ρ‹Π΅ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΎΠ½ΠΈ Π½Π΅Π΄ΠΎΠΎΡ†Π΅Π½ΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Ρ€Π΅Π΄ΠΊΠΎ.

Π’ этом руководствС ΠΌΡ‹ ΠΏΠΎΠΊΠ°ΠΆΠ΅ΠΌ Π²Π°ΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ pushd ΠΈ popd для Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Π΄Π΅Ρ€Π΅Π²Ρƒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ² вашСй систСмы.

Π‘Ρ‚Π΅ΠΊ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²

Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ всСгда находится Π½Π°Π²Π΅Ρ€Ρ…Ρƒ стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². Π’Π΅ΠΊΡƒΡ‰ΠΈΠΉ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ β€” это ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (ΠΏΠ°ΠΏΠΊΠ°), Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π² настоящСС врСмя Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ взаимодСйствуСтС с ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкой, Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚Π΅ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

Команда pwd позволяСт ΡƒΠ·Π½Π°Ρ‚ΡŒ, Π² ΠΊΠ°ΠΊΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ Π²Ρ‹ сСйчас Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ΡΡŒ.

ΠŸΡ€ΠΈ Π½Π°Π²ΠΈΠ³Π°Ρ†ΠΈΠΈ ΠΏΠΎ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ Tab для автозаполнСния ΠΈΠΌΠ΅Π½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ². Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ косой Ρ‡Π΅Ρ€Ρ‚Ρ‹ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΈΠΌΠ΅Π½ΠΈ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ.

Команда pushd

Бинтаксис ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ pushd ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ:

Π’ случаС успСха привСдСнная Π²Ρ‹ΡˆΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° распСчатаСт стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ².

ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ домашний ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Π”ΠΎΠ±Π°Π²ΠΈΠΌ Π² стСк Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³:

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ всСгда находится Π½Π°Π²Π΅Ρ€Ρ…Ρƒ) Π½Π΅ мСняСтся, ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /usr/local добавляСтся Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ свСрху Π² стСк:

Π§Ρ‚ΠΎΠ±Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ ΠΏΡ€ΠΎΠΈΠ»Π»ΡŽΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹, распСчатаСм Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

На Π²Ρ‹Ρ…ΠΎΠ΄Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠΎΠΊΠ°Π·Π°Π½ индСксированный список стСка ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /var/www ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π² Π²Π΅Ρ€Ρ…Π½ΡŽΡŽ Ρ‡Π°ΡΡ‚ΡŒ стСка, Π²Ρ‹ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ΡΡŒ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… способов.

Команда popd ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π²ΠΈΠ΄:

ΠŸΡ€ΠΈ использовании Π±Π΅Π· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² popd удаляСт Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ ΠΈΠ· стСка ΠΈ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² Π½ΠΎΠ²Ρ‹ΠΉ Π²Π΅Ρ€Ρ…Π½ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³.

Допустим, Ρƒ нас Π΅ΡΡ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Если Π²Ρ‹ запуститС ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ popd ΠΎΠ½Π° ΡƒΠ΄Π°Π»ΠΈΡ‚ /opt ΠΈΠ· стСка ΠΈ popd Π² popd /usr/local :

Π’Ρ‹Π²ΠΎΠ΄ ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ стСк ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ΠΎΠ²:

Π’Ρ‹Π²ΠΎΠ΄Ρ‹

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ cd для ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄Π° ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ. Однако, Ссли Π²Ρ‹ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ pushd ΠΈ popd повысят Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ ΠΈ ΡΡ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ.

Если Ρƒ вас Π΅ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ вопросы ΠΈΠ»ΠΈ ΠΎΡ‚Π·Ρ‹Π²Ρ‹, Π½Π΅ ΡΡ‚Π΅ΡΠ½ΡΠΉΡ‚Π΅ΡΡŒ ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π“Π»Π°Π²Π° 11. Π’Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ случаС, встроСнныС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Bash, ΠΏΡ€ΠΈ исполнСнии Π²Π½ΡƒΡ‚Ρ€ΠΈ сцСнария, Π½Π΅ ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°ΡŽΡ‚ Π½ΠΎΠ²Ρ‹ΠΉ подпроцСсс, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π²Ρ‹Π·ΠΎΠ² Π²Π½Π΅ΡˆΠ½ΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ созданию Π½ΠΎΠ²ΠΎΠ³ΠΎ подпроцСсса.

Π’Π²ΠΎΠ΄/Π²Ρ‹Π²ΠΎΠ΄

Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ (Π½Π° stdout) Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ содСрТимоС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ (см. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 4-1).

Команда echo ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΠΎ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρƒ Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ.

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠΎΠΌΠ°Π½Π΄Π° echo, Π² ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΠΈ с подстановкой ΠΊΠΎΠΌΠ°Π½Π΄ ΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΡ‡Π°Π²ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присвоСния значСния ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ.

a=`echo «HELLO» | tr A-Z a-z`

Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ Π·Π°ΠΏΠΎΠΌΠ½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π° echo `command` ΡƒΠ΄Π°Π»ΠΈΡ‚ всС символы ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° строки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ command.

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

Π­Ρ‚ΠΎ встроСнная ΠΊΠΎΠΌΠ°Π½Π΄Π° Bash ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ внСшний Π°Π½Π°Π»ΠΎΠ³ /bin/echo.

Π­Ρ‚ΠΎ встроСнная ΠΊΠΎΠΌΠ°Π½Π΄Π° Bash. Π˜ΠΌΠ΅Π΅Ρ‚ внСшний Π°Π½Π°Π»ΠΎΠ³ /bin/printf ΠΈΠ»ΠΈ /usr/bin/printf. Π—Π° Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ ΠΎΠ±Ρ€Π°Ρ‰Π°ΠΉΡ‚Π΅ΡΡŒ ΠΊ страницам справочного руководства man 1 printf ΠΏΠΎ систСмным ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌ.

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

Π‘Ρ‚Π°Ρ€Ρ‹Π΅ вСрсии Bash ΠΌΠΎΠ³ΡƒΡ‚ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ printf.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-1. printf Π² дСйствии

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-2. Π’Π²ΠΎΠ΄ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ read

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-3. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ read Π±Π΅Π· указания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ для Π²Π²ΠΎΠ΄Π°

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-4. Π’Π²ΠΎΠ΄ многострочного тСкста с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ read

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-5. ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ наТатия Π½Π° курсорныС клавиши

Команда read ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ значСния для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΈΠ· Ρ„Π°ΠΉΠ»Π°, ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π° stdin. Если Ρ„Π°ΠΉΠ» содСрТит Π½Π΅ ΠΎΠ΄Π½Ρƒ строку, Ρ‚ΠΎ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π±ΡƒΠ΄Π΅Ρ‚ присвоСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ пСрвая строка. Если ΠΊΠΎΠΌΠ°Π½Π΄Π΅ read Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅Π΄Π°Π½ΠΎ нСсколько ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ…, Ρ‚ΠΎ пСрвая строка Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π·Π±ΠΈΡ‚Π°, ΠΏΠΎ ΠΏΡ€ΠΎΠ±Π΅Π»Π°ΠΌ, Π½Π° нСсколько подстрок, каТдая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ записана Π² свою ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ. Π‘ΡƒΠ΄ΡŒΡ‚Π΅ остороТны!

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-6. Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ read ΠΈΠ· Ρ„Π°ΠΉΠ»Π° Ρ‡Π΅Ρ€Π΅Π· ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. caution. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-caution. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° caution

ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ echo, ΠΏΠΎ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ read, Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ.

Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Ρƒ ΠΎΡ‚ cat, каТСтся срабатываСт.

Ѐайловая систСма

Π£ΠΆΠ΅ знакомая Π½Π°ΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Π° cd, ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‰Π°Ρ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована Π² случаях, ΠΊΠΎΠ³Π΄Π° Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π°Ρ…ΠΎΠ΄ΡΡΡŒ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

НСоТиданным ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ выполняСтся ΠΊΠΎΠΌΠ°Π½Π΄Π° cd, Ссли Π΅ΠΉ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ, Π² качСствС ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° назначСния, Π΄Π²Π° слэша.

Π‘Π°ΠΌΠΎ собой разумССтся, это Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» Π±Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /. Π­Ρ‚Π° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Π½Π°Π±Π»ΡŽΠ΄Π°Π΅Ρ‚ΡΡ ΠΊΠ°ΠΊ Π² ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строкС, Ρ‚Π°ΠΊ ΠΈ Π² сцСнариях.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-7. Π‘ΠΌΠ΅Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π°

ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅

Команда let ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ арифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹ΠΌΠΈ. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ случаСв, Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΡƒΠΏΡ€ΠΎΡ‰Π΅Π½Π½Ρ‹ΠΌ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠΌ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ expr.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-8. Команда let, арифмСтичСскиС ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ.

ВранслируСт список Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΈΠ· списка, Π² ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-9. ДСмонстрация ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ eval

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-10. ΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ сСанса

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-11. Π¨ΠΈΡ„Ρ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΠΎ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡƒ «rot13»

Rory Winston прСдставил ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΊΠ°ΠΊ ΠΎΠ±Ρ€Π°Π·Π΅Ρ† практичСского использования ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ eval.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-12. Π—Π°ΠΌΠ΅Π½Π° ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π½Π° Π΅Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π² исходном тСкстС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС Perl, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ eval

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. caution. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-caution. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° caution

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-13. Установка Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ set

Π’Ρ‹Π·ΠΎΠ² set Π±Π΅Π· ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² просто Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ список ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-14. ИзмСнСниС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ²)

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-15. «Π‘брос» ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ

Команда export экспортируСт ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ, дСлая Π΅Π΅ доступной Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΌ процСссам. К соТалСнию, Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΎΠΌΡƒ процСссу. Π’ качСствС ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° использования ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ export ΠΌΠΎΠΆΠ½ΠΎ привСсти сцСнарии ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ систСмы, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΡ‹Π΅ Π² процСссС Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΡŽΡ‚ ΠΈ ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ окруТСния, дСлая ΠΈΡ… доступными для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΡ… процСссов.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-16. ΠŸΠ΅Ρ€Π΅Π΄Π°Ρ‡Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹ΠΉ сцСнарий awk, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ export

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. caution. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-caution. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° caution

ДопускаСтся объСдинСниС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ экспорта ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Π² ΠΎΠ΄Π½Ρƒ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ: export var1=xxx.

Однако, ΠΊΠ°ΠΊ Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ» Greg Keraunen, Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ситуациях такая комбинация ΠΌΠΎΠΆΠ΅Ρ‚ Π΄Π°Π²Π°Ρ‚ΡŒ ΠΈΠ½ΠΎΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, Π½Π΅ΠΆΠ΅Π»ΠΈ Ρ€Π°Π·Π΄Π΅Π»ΡŒΠ½Π°Ρ инициализация ΠΈ экспорт.

ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ declare ΠΈ typeset Π·Π°Π΄Π°ΡŽΡ‚ ΠΈ/ΠΈΠ»ΠΈ Π½Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°ΡŽΡ‚ ограничСния Π½Π° ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅.

Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. tip. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-tip. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° tip
Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

    Випичная конструкция Ρ†ΠΈΠΊΠ»Π° while с getopts нСсколько отличаСтся ΠΎΡ‚ стандартной ΠΈΠ·-Π·Π° отсутствия ΠΊΠ²Π°Π΄Ρ€Π°Ρ‚Π½Ρ‹Ρ… скобок, ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡŽΡ‰ΠΈΡ… условиС продолТСния Ρ†ΠΈΠΊΠ»Π°.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ getopts, замСнившСй ΡƒΡΡ‚Π°Ρ€Π΅Π²ΡˆΡƒΡŽ, ΠΈ Π½Π΅ Ρ‚Π°ΠΊΡƒΡŽ ΠΌΠΎΡ‰Π½ΡƒΡŽ, внСшнюю ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ getopt.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-17. ΠŸΡ€ΠΈΠ΅ΠΌ ΠΎΠΏΡ†ΠΈΠΉ/Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Π΅ΠΌΡ‹Ρ… ΡΡ†Π΅Π½Π°Ρ€ΠΈΡŽ, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ getopts

    Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ сцСнариСм

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-18. «ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅» внСшнСго Ρ„Π°ΠΉΠ»Π°

    Π€Π°ΠΉΠ» data-file для ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-18, прСдставлСнного Π²Ρ‹ΡˆΠ΅, Π΄ΠΎΠ»ΠΆΠ΅Π½ Π½Π°Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Ρ‚ΠΎΠΌ ΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅.

    Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ Π΄Π°ΠΆΠ΅ самого сСбя, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ этому Π΅Π΄Π²Π° Π»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ ΠΊΠ°ΠΊΠΎΠ΅ Π»ΠΈΠ±ΠΎ практичСскоС ΠΏΡ€ΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-19. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ (бСсполСзный) сцСнария, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ сСбя самого.

    БСзусловноС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Ρ‹ сцСнария. КомандС exit ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ Ρ†Π΅Π»ΠΎΠ΅ число, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π΅Π½ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒ процСссу ΠΊΠ°ΠΊ ΠΊΠΎΠ΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ. Π’ΠΎΠΎΠ±Ρ‰Π΅, считаСтся Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ Π·Π°Π²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ сцСнария, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΡ… случаСв, ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ exit 0, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΡΠΊΠΈΠΉ процСсс ΠΎΠ± ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΠΌ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ.

    Если сцСнарий Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ exit Π±Π΅Π· Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ², Ρ‚ΠΎ Π² качСствС ΠΊΠΎΠ΄Π° Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ сцСнария принимаСтся ΠΊΠΎΠ΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ послСднСй Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Π½Π΅ считая самой ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ exit.

    Π­Ρ‚ΠΎ встроСнная ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π° shell, замСняСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ процСсс Π½ΠΎΠ²Ρ‹ΠΌ процСссом, запускаСмым ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ exec. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ встрСчаСт эту ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, Ρ‚ΠΎ ΠΎΠ½ ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅Ρ‚ Π΄ΠΎΡ‡Π΅Ρ€Π½ΠΈΠΉ процСсс, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ. ΠŸΡ€ΠΈ использовании встроСнной ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ exec, ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠ° Π½Π΅ ΠΏΠΎΡ€ΠΎΠΆΠ΄Π°Π΅Ρ‚ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ процСсс, Π° замСняСт Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ процСсс Π΄Ρ€ΡƒΠ³ΠΈΠΌ. Для сцСнария это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ Π΅Π³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ сразу послС исполнСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ exec. По этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅, Ссли Π²Π°ΠΌ встрСтится exec Π² сцСнарии, Ρ‚ΠΎ, скорСС всСго это Π±ΡƒΠ΄Π΅Ρ‚ послСдняя ΠΊΠΎΠΌΠ°Π½Π΄Π° Π² сцСнарии.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-20. Команда exec

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-21. Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСт сСбя самого

    Команда exec Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для пСрСнаправлСния. Π’Π°ΠΊ, ΠΊΠΎΠΌΠ°Π½Π΄Π° exec stdin) Ρ„Π°ΠΉΠ»ΠΎΠΌ zzz-file (см. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 16-1).

    Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

    Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° позволяСт ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊΠ»ΡŽΡ‡ΠΈ (ΠΎΠΏΡ†ΠΈΠΈ) ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ Π½Π° Π»Π΅Ρ‚Ρƒ (см. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 23-1 ΠΈ ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 23-2). Π•Π΅ часто ΠΌΠΎΠΆΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‚ΠΈΡ‚ΡŒ Π² стартовых Ρ„Π°ΠΉΠ»Π°Ρ…, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ Π² ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹Ρ… сцСнариях. Π’Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Bash вСрсии 2 ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅.

    ΠšΠΎΠΌΠ°Π½Π΄Ρ‹

    Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ, ΡΠ²ΠΈΠ΄Π΅Ρ‚Π΅Π»ΡŒΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΎ Π½Π΅ΡƒΠ΄Π°Ρ‡Π΅, ΠΈ Π½ΠΈΡ‡Π΅Π³ΠΎ Π±ΠΎΠ»Π΅Π΅.

    11.1. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ управлСния заданиями

    Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ список Π·Π°Π΄Π°Π½ΠΈΠΉ, ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ Π² Ρ„ΠΎΠ½Π΅. Команда ps Π±ΠΎΠ»Π΅Π΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠ²Π½Π°.

    Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

    Задания ΠΈ процСссы Π»Π΅Π³ΠΊΠΎ ΡΠΏΡƒΡ‚Π°Ρ‚ΡŒ. НСкоторыС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ kill, disown ΠΈ wait ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Π»ΠΈΠ±ΠΎ Π½ΠΎΠΌΠ΅Ρ€ задания, Π»ΠΈΠ±ΠΎ Π½ΠΎΠΌΠ΅Ρ€ процСсса. ΠšΠΎΠΌΠ°Π½Π΄Ρ‹ fg, bg ΠΈ jobs ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½ΠΎΠΌΠ΅Ρ€ задания.

    УдаляСт Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΈΠ· Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹Ρ… Π·Π°Π΄Π°Π½ΠΈΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ.

    Команда fg ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ΠΈΡ‚ Π·Π°Π΄Π°Π½ΠΈΠ΅ ΠΈΠ· Ρ„ΠΎΠ½Π° Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π½ΠΈΠΉ ΠΏΠ»Π°Π½. Команда bg пСрСзапускаСт приостановлСнноС Π·Π°Π΄Π°Π½ΠΈΠ΅ Π² Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠΌ Ρ€Π΅ΠΆΠΈΠΌΠ΅. Если эти ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±Ρ‹Π»ΠΈ Π²Ρ‹Π·Π²Π°Π½Ρ‹ Π±Π΅Π· указания Π½ΠΎΠΌΠ΅Ρ€Π° задания, Ρ‚ΠΎ ΠΎΠ½ΠΈ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡ‚Π²ΡƒΡŽΡ‚ Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΈΡΠΏΠΎΠ»Π½ΡΡŽΡ‰Π΅Π΅ΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅.

    ΠžΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ сцСнария Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€ ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄ΡƒΡ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Ρ‹ всС Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Π΅ задания ΠΈΠ»ΠΈ ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΎ Π·Π°Π΄Π°Π½ΠΈΠ΅/процСсс с ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΌ Π½ΠΎΠΌΠ΅Ρ€ΠΎΠΌ задания/PID процСсса. Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ΠΊΠΎΠ΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ задания/процСсса.

    Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ wait для прСдотвращСния ΠΏΡ€Π΅ΠΆΠ΄Π΅Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ сцСнария Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ΅ Π·Π°Π΄Π°Π½ΠΈΠ΅.

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-22. ОТиданиС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ процСсса ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ Ρ€Π°Π±ΠΎΡ‚Ρƒ

    Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

    ΠŸΡ€ΠΈ запускС ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Ρ„ΠΎΠ½Π΅ ΠΈΠ· сцСнария ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ ситуация, ΠΊΠΎΠ³Π΄Π° сцСнарий приостанавливаСт свою Ρ€Π°Π±ΠΎΡ‚Ρƒ Π΄ΠΎ Ρ‚Π΅Ρ… ΠΏΠΎΡ€, ΠΏΠΎΠΊΠ° Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚Π° клавиша ENTER. Π­Ρ‚ΠΎ, каТСтся, происходит с ΠΊΠΎΠΌΠ°Π½Π΄Π°ΠΌΠΈ, Π΄Π΅Π»Π°ΡŽΡ‰ΠΈΠΌΠΈ Π²Ρ‹Π²ΠΎΠ΄ Π½Π° stdout. Π’Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ Ρ€Π°Π·Π΄Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Ρƒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ.

    РазмСстив ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ wait, послС запуска Ρ„ΠΎΠ½ΠΎΠ²ΠΎΠ³ΠΎ задания, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΠΎΡ‚Π²Ρ€Π°Ρ‚ΠΈΡ‚ΡŒ Ρ‚Π°ΠΊΠΎΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ сцСнария.

    ΠŸΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Ρ‹Π²ΠΎΠ΄Π° Π² Ρ„Π°ΠΉΠ» ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ Π½Π° устройство /dev/null Ρ‚Π°ΠΊΠΆΠ΅ снимаСт эту ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ.

    ДСйствуСт Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π½Π°ΠΆΠ°Ρ‚ΠΈΡŽ Π½Π° ΠΊΠΎΠΌΠ±ΠΈΠ½Π°Ρ†ΠΈΡŽ клавиш Control+— Z, Π·Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ΠΌ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½Π° приостанавливаСт Ρ€Π°Π±ΠΎΡ‚Ρƒ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ.

    Π—Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ сСанс Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ, ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠΊΠ°Π·Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ.

    Π’Ρ‹Π΄Π°Π΅Ρ‚ статистику исполнСния ΠΊΠΎΠΌΠ°Π½Π΄ Π² Π΅Π΄ΠΈΠ½ΠΈΡ†Π°Ρ… систСмного Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅:

    Π˜ΠΌΠ΅Π΅Ρ‚ вСсьма ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½Π½ΡƒΡŽ сфСру примСнСния, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ сцСнарии ΠΊΡ€Π°ΠΉΠ½Π΅ Ρ€Π΅Π΄ΠΊΠΎ ΠΏΠΎΠ΄Π²Π΅Ρ€Π³Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΡ„ΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ.

    ΠŸΡ€ΠΈΠ½ΡƒΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠ΅ процСсса ΠΏΡƒΡ‚Π΅ΠΌ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‡ΠΈ Π΅ΠΌΡƒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ сигнала (см. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 13-4).

    ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 11-23. Π‘Ρ†Π΅Π½Π°Ρ€ΠΈΠΉ, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰ΠΈΠΉ сСбя сам с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ kill

    Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. tip. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-tip. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° tip
    Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note

    Π’Π°Π±Π»ΠΈΡ†Π° 11-1. Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΡ Π·Π°Π΄Π°Π½ΠΈΠΉ

    Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. note. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° Ρ„ΠΎΡ‚ΠΎ. Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°-note. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° Pushd Ρ‡Ρ‚ΠΎ Π·Π° ΠΊΠΎΠΌΠ°Π½Π΄Π°. ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° note
    ΠΠΎΡ‚Π°Ρ†ΠΈΡΠžΠΏΠΈΡΠ°Π½ΠΈΠ΅
    %NНомСр задания [N]
    %SΠ’Ρ‹Π·ΠΎΠ² (командная строка) задания, которая начинаСтся со строки S
    %?SΠ’Ρ‹Π·ΠΎΠ² (командная строка) задания, которая содСрТит строку S
    %%«Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅» Π·Π°Π΄Π°Π½ΠΈΠ΅ (послСднСС Π·Π°Π΄Π°Π½ΠΈΠ΅ приостановлСнноС Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π½Π΅ΠΌ ΠΏΠ»Π°Π½Π΅ ΠΈΠ»ΠΈ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ΅ Π² Ρ„ΠΎΠ½Π΅)
    %+«Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅» Π·Π°Π΄Π°Π½ΠΈΠ΅ (послСднСС Π·Π°Π΄Π°Π½ΠΈΠ΅ приостановлСнноС Π½Π° ΠΏΠ΅Ρ€Π΅Π΄Π½Π΅ΠΌ ΠΏΠ»Π°Π½Π΅ ΠΈΠ»ΠΈ Π·Π°ΠΏΡƒΡ‰Π΅Π½Π½ΠΎΠ΅ Π² Ρ„ΠΎΠ½Π΅)
    %-ПослСднСС заданиС
    $!ПослСдний Ρ„ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ процСсс

    ΠŸΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΡ

    Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, исходныС тСксты ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹Ρ… Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ, Π½Π° языкС C, Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ /usr/share/doc/bash-. /functions.

    Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

    Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

    Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *