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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«UNIX β€” ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½Π°Ρ срСда программирования». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 31

Автор ΠšΠ΅Ρ€Π½ΠΈΠ³Π°Π½ Π‘Ρ€Π°ΠΉΠ°Π½ Уилсон

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

shell
ΠΈ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹Π΅ структуры управлСния. ВсС это понадобится Π²Π°ΠΌ для эффСктивной Ρ€Π°Π±ΠΎΡ‚Ρ‹ с ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ΠΎΠΌ. ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π» Π³Π». 5 Π±ΠΎΠ»Π΅Π΅ слоТный. Π˜Π·ΡƒΡ‡ΠΈΠ² Π΅Π³ΠΎ, Π²Ρ‹ смоТСтС ΠΏΠΈΡΠ°Ρ‚ΡŒ настоящиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ Π½Π° языкС
shell
ΠΈ Π΄Π°ΠΆΠ΅ ΠΏΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΡ‚ΡŒ ΠΈΡ… Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ. Π’Π°ΠΊΠΎΠ΅ Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ‚Π΅ΠΌΡ‹, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π²ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎ, поэтому ΠΌΡ‹ Ρ€Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡƒΠ΅ΠΌ Π²Π°ΠΌ ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ±Π΅ Π³Π»Π°Π²Ρ‹.

3.1 Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки

ΠŸΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠΈΡ‚ΡŒ рассмотрСниС, Π½ΡƒΠΆΠ½ΠΎ ΡƒΡ‚ΠΎΡ‡Π½ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈ ΠΊΠ°ΠΊ ΠΎΠ½Π° интСрпрСтируСтся

shell
. Π­Ρ‚ΠΎΡ‚ Ρ€Π°Π·Π΄Π΅Π» содСрТит Π±ΠΎΠ»Π΅Π΅ Ρ„ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠ΅ описаниС ΠΈ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ± основных возмоТностях ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°, описанных Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π³Π»Π°Π²Π΅.

Бамая простая ΠΊΠΎΠΌΠ°Π½Π΄Π° состоит ΠΈΠ· ΠΎΠ΄Π½ΠΎΠ³ΠΎ слова, ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ ΠΈΠΌΠ΅Π½ΠΈ Ρ„Π°ΠΉΠ»Π°, ΠΏΡ€Π΅Π΄Π½Π°Π·Π½Π°Ρ‡Π΅Π½Π½ΠΎΠ³ΠΎ для выполнСния (ΠΏΠΎΠ·Π΄Π½Π΅Π΅ Π²Ρ‹ ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡ‚Π΅ΡΡŒ с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ‚ΠΈΠΏΠ°ΠΌΠΈ ΠΊΠΎΠΌΠ°Π½Π΄):

$ who
ВыполняСм Ρ„Π°ΠΉΠ» /bin/who

you tty2 Sep 28 07:51

jpl tty4 Sep 28 08:32

$

Команда, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ символом ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° строки, Π½ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π·Π°Π²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒΡΡ ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΎΠΉ с запятой:

$ date;

Wed Sep 28 09:07:15 EDT 1983

$ date; who

Wed Sep 28 09:07:23 EDT 1983

you tty2 Sep 28 07:51

jpl tty4 Sep 28 08:32

$

Однако Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π΅ начнСтся, ΠΏΠΎΠΊΠ° Π²Ρ‹ Π½Π΅ Π½Π°ΠΆΠΌΠ΅Ρ‚Π΅ ΠΊΠ»Π°Π²ΠΈΡˆΡƒ RETURN. ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ Π²Ρ‹Π΄Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ послС Π½Π΅ΡΠΊΠΎΠ»ΡŒΠΊΠΈΡ… ΠΊΠΎΠΌΠ°Π½Π΄, Π½ΠΎ Ссли Π½Π΅ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ этого, Ρ‚ΠΎ Π²Π²ΠΎΠ΄

$ date; who

ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π΅Π½ Π²Π²ΠΎΠ΄Ρƒ Π΄Π²ΡƒΡ… ΠΊΠΎΠΌΠ°Π½Π΄ Π² Ρ€Π°Π·Π½Ρ‹Ρ… строках. Π’ частности, ΠΊΠΎΠΌΠ°Π½Π΄Π°

who
Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ Π΄ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ
date
. ΠŸΠΎΠΏΡ€ΠΎΠ±ΡƒΠΉΡ‚Π΅ ΠΏΠΎΡΠ»Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния этих ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ:

$ date; who | wc

Wed Sep 28 09: 08:48 EDT 1983

2 10 60

$

Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π²Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ Π½Π΅ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠΆΠΈΠ΄Π°Π»ΠΈ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

who
пСрСдаСтся ΠΊΠΎΠΌΠ°Π½Π΄Π΅
wc
. ΠŸΡ€ΠΈ связывании
who
ΠΈ
wc
Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠ°Π½Π°Π» образуСтся Сдиная ΠΊΠΎΠΌΠ°Π½Π΄Π°, называСмая ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€ΠΎΠΌ, которая выполняСтся послС
date
. Π’ процСссС Ρ€Π°Π·Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ строки
shell
считаСт ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ
'|'
Π²Ρ‹ΡˆΠ΅, Ρ‡Π΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ
';'
. Для группирования ΠΊΠΎΠΌΠ°Π½Π΄ слСдуСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ скобки:

$ (date; who)

Wed Sep 28 09:11:09 EDT 1983

you tty2 Sep 28 07:51

jpl tty4 Sep 28 08:32

$ (date; who) | wc

3 16 89

$

Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ выполнСния ΠΊΠΎΠΌΠ°Π½Π΄

date
ΠΈ
who
конкатСнируСтся Π² ΠΎΠ΄ΠΈΠ½ ΠΏΠΎΡ‚ΠΎΠΊ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄Π°Ρ‚ΡŒ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ.

Π˜Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰ΡƒΡŽ ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ, ΠΌΠΎΠΆΠ½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

tee
ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² Ρ„Π°ΠΉΠ» (Π½ΠΎ Π½Π΅ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠ°Π½Π°Π»). Команда
tee
являСтся Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Π°
shell
, Π½ΠΎ Ρ‚Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅ ΡƒΠ΄ΠΎΠ±Π½Π° ΠΈ ΠΏΡ€ΠΈ ΠΌΠ°Π½ΠΈΠΏΡƒΠ»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΌΠΈ ΠΊΠ°Π½Π°Π»Π°ΠΌΠΈ. Π•Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ для сохранСния ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΎΡ‡Π½ΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π° Π² Ρ„Π°ΠΉΠ»Π΅:

$ (date; who) | tee save | wc

3 16 89
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ wc

$ cat save

Wed Sep 28 09:13:22 EDT 1983

you tty2 Sep 28 07:51

jpl tty4 Sep 28 08:32

$ wc <save

3 16 48

$

Команда

tee
пСрСписываСт свой Π²Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΊ Π² ΠΏΠΎΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» (ΠΈΠ»ΠΈ Ρ„Π°ΠΉΠ»Ρ‹), Π° ΠΈΠ· Π½Π΅Π³ΠΎ β€” Ρ‚ΠΎΡ‡Π½ΠΎ Ρ‚Π°ΠΊ ΠΆΠ΅ Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Π²Ρ‹Ρ…ΠΎΠ΄Π½ΠΎΠΉ ΠΏΠΎΡ‚ΠΎΠΊ, поэтому wc ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Ρ‚Π΅ ΠΆΠ΅ самыС Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠ°ΠΊ Ссли Π±Ρ‹ ΠΊΠΎΠΌΠ°Π½Π΄Π°
tee
Π½Π΅ присутствовала Π² ΠΊΠΎΠ½Π²Π΅ΠΉΠ΅Ρ€Π΅.

Π’ качСствС Π΅Ρ‰Π΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ символа, Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ, ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ ампСрсанд (

&
). ДСйствиС Π΅Π³ΠΎ Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡŽ символа ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄Π° строки ΠΈ Ρ‚ΠΎΡ‡ΠΊΠΈ с запятой, Π½ΠΎ ΠΎΠ½ Π΅Ρ‰Π΅ ΠΈ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€Ρƒ, Ρ‡Ρ‚ΠΎ Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΆΠ΄Π°Ρ‚ΡŒ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ
&
ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для запуска Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ…, Π΄ΠΎΠ»Π³ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‰ΠΈΡ…ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄, Π² Ρ‚ΠΎ врСмя ΠΊΠ°ΠΊ Π²Ρ‹ ΠΏΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅Ρ‚Π΅ Π²Π²ΠΎΠ΄ΠΈΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅:

$ long-running-command &

5273
НомСр процСсса Π΄Π»ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹

$Β Β Β 
ΠŸΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ появляСтся сразу

ИмСя Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π³Ρ€ΡƒΠΏΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹, ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅ΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ интСрСсныС способы примСнСния Ρ„ΠΎΠ½ΠΎΠ²Ρ‹Ρ… процСссов. Команда

sleep
ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ число сСкунд, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΡ‚ΡŒ своС Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅:

$ sleep 5

$
ΠŸΡ€ΠΎΡ…ΠΎΠ΄ΠΈΡ‚ 5 сСкунд Π΄ΠΎ появлСния ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΡ

$ (sleep 5; date) & date

5278

Wed Sep 28 09:18:20 EDT 1983Β Β 
Π Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π²Ρ‚ΠΎΡ€ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ date

$ Wed Sep 28 09:18:25 EDT 1983
ΠŸΠΎΡΠ²Π»ΡΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅, Π·Π°Ρ‚Π΅ΠΌ

Ρ‡Π΅Ρ€Π΅Π· 5 сСкунд Π΄Π°Ρ‚Π°

Π€ΠΎΠ½ΠΎΠ²Ρ‹ΠΉ процСсс начинаСтся, Π½ΠΎ сразу "засыпаСт"; Ρ‚Π΅ΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½Π΅ΠΌ вторая ΠΊΠΎΠΌΠ°Π½Π΄Π°

date
Π²Ρ‹Π΄Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ врСмя, Π° ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€ β€” ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ΅Π½ΠΈΠ΅ для Π²Π²ΠΎΠ΄Π° Π½ΠΎΠ²ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹. ΠŸΡΡ‚ΡŒΡŽ сСкундами ΠΏΠΎΠ·ΠΆΠ΅ прСкращаСтся Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹
sleep
, ΠΈ пСрвая ΠΊΠΎΠΌΠ°Π½Π΄Π°
date
Π²Ρ‹Π΄Π°Π΅Ρ‚ Π½ΠΎΠ²ΠΎΠ΅ врСмя. Π’Ρ€ΡƒΠ΄Π½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π½Π° Π±ΡƒΠΌΠ°Π³Π΅ истСчСниС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, поэтому Π²Π°ΠΌ слСдуСт ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ этот ΠΏΡ€ΠΈΠΌΠ΅Ρ€. (Π Π°Π·Π½ΠΈΡ†Π° ΠΌΠ΅ΠΆΠ΄Ρƒ двумя значСниями Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π½Π΅ Ρ€Π°Π²Π½ΡΡ‚ΡŒΡΡ Π² точности 5 с, Π² зависимости ΠΎΡ‚ загруТСнности ΠΌΠ°ΡˆΠΈΠ½Ρ‹ ΠΈ ΠΏΠΎ ряду Π΄Ρ€ΡƒΠ³ΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½.) Π­Ρ‚ΠΎ ΡƒΠ΄ΠΎΠ±Π½Ρ‹ΠΉ способ ΠΎΡ‚Π»ΠΎΠΆΠΈΡ‚ΡŒ запуск ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π½Π° Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅; рассмотритС Ρ‚Π°ΠΊΠΆΠ΅ Π² качСствС ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ³ΠΎ ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° Ρ‚Π°ΠΊΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

$ (sleep 300; echo Π§Π°ΠΉ Π³ΠΎΡ‚ΠΎΠ²) &
Π§Π°ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ Π³ΠΎΡ‚ΠΎΠ² Ρ‡Π΅Ρ€Π΅Π· 5 ΠΌΠΈΠ½ΡƒΡ‚

5291