ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΡΠΏΠΎΠ»Π½ΡΡ ΡΡΠ½ΠΊΡΠΈΡ, Π²ΡΠ·Π²Π°Π½Π½ΡΡ ΠΊΠ°ΠΊ:
link("source", "/dir/target");
ΡΠ΄ΡΠΎ ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΠ°ΠΉΠ»Π° Β«sourceΒ», ΡΠ²Π΅Π»ΠΈΡΠΈΠ²Π°Π΅Ρ Π² Π½Π΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΠ²ΡΠ·Π΅ΠΉ, Π·Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΡΠΊΠ°ΠΆΠ΅ΠΌ 74, ΠΈ ΡΠ½ΠΈΠΌΠ°Π΅Ρ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ. Π―Π΄ΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π½Π°Ρ ΠΎΠ΄ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Β«dirΒ», ΡΠ²Π»ΡΡΡΠ΅Π³ΠΎΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ Π΄Π»Ρ ΡΠ°ΠΉΠ»Π° Β«targetΒ», ΠΈΡΠ΅Ρ ΡΠ²ΠΎΠ±ΠΎΠ΄Π½ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Β«dirΒ» ΠΈ Π·Π°ΠΏΠΈΡΡΠ²Π°Π΅Ρ Π² Π½Π΅Π³ΠΎ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° Β«targetΒ» ΠΈ Π½ΠΎΠΌΠ΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° 74. ΠΠΎ ΠΎΠΊΠΎΠ½ΡΠ°Π½ΠΈΠΈ ΡΡΠΈΡ Π΄Π΅ΠΉΡΡΠ²ΠΈΠΉ ΠΎΠ½ΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°ΠΉΠ»Π° Β«sourceΒ» ΠΏΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ iput. ΠΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΠ²ΡΠ·Π΅ΠΉ ΡΠ°ΠΉΠ»Π° Β«sourceΒ» ΡΠ°Π½ΡΡΠ΅ Π±ΡΠ»ΠΎ ΡΠ°Π²Π½ΠΎ 1, ΡΠΎ ΡΠ΅ΠΏΠ΅ΡΡ ΠΎΠ½ΠΎ ΡΠ°Π²Π½ΠΎ 2.
Π‘ΡΠΎΠΈΡ ΡΠΏΠΎΠΌΡΠ½ΡΡΡ ΠΎ Π΄Π²ΡΡ ΡΡΠΏΠΈΠΊΠΎΠ²ΡΡ ΡΠΈΡΡΠ°ΡΠΈΡΡ , ΡΠ²ΠΈΠ²ΡΠΈΡ ΡΡ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ ΡΠΎΠ³ΠΎ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ½ΠΈΠΌΠ°Π΅Ρ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ ΠΏΠΎΡΠ»Π΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΠ²ΡΠ·Π΅ΠΉ. ΠΡΠ»ΠΈ Π±Ρ ΡΠ΄ΡΠΎ Π½Π΅ ΡΠ½ΠΈΠΌΠ°Π»ΠΎ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ, Π΄Π²Π° ΠΏΡΠΎΡΠ΅ΡΡΠ°, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ:
ΠΏΡΠΎΡΠ΅ΡΡ A: link("a/b/c/d", "e/f/g");
ΠΏΡΠΎΡΠ΅ΡΡ B: link("e/f", "a/b/c/d/ee");
Π·Π°ΡΠ»ΠΈ Π±Ρ Π² ΡΡΠΏΠΈΠΊ (Π²Π·Π°ΠΈΠΌΠ½Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°). ΠΡΠ΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, ΡΡΠΎ ΠΏΡΠΎΡΠ΅ΡΡ A ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ» ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°ΠΉΠ»Π° Β«a/b/c/dΒ» Π² ΡΠΎΡ ΡΠ°ΠΌΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ, ΠΊΠΎΠ³Π΄Π° ΠΏΡΠΎΡΠ΅ΡΡ B ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ» ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°ΠΉΠ»Π° Β«e/fΒ». Π€ΡΠ°Π·Π° Β«Π² ΡΠΎΡ ΠΆΠ΅ ΡΠ°ΠΌΡΠΉ ΠΌΠΎΠΌΠ΅Π½ΡΒ» ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ, ΡΡΠΎ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π΄ΠΎΡΡΠΈΠ³Π½ΡΡΠΎ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅, ΠΏΡΠΈ ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΠΏΠΎΠ»ΡΡΠΈΠ» ΠΈΡΠΊΠΎΠΌΡΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ. (Π ΠΈΡΡΠ½ΠΎΠΊ 5.30 ΠΈΠ»Π»ΡΡΡΡΠΈΡΡΠ΅Ρ ΡΡΠ°Π΄ΠΈΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ².) ΠΠΎΠ³Π΄Π° ΠΆΠ΅ ΡΠ΅ΠΏΠ΅ΡΡ ΠΏΡΠΎΡΠ΅ΡΡ A ΠΏΠΎΠΏΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°ΠΉΠ»Π° Β«e/fΒ», ΠΎΠ½ ΠΏΡΠΈΠΎΡΡΠ°Π½ΠΎΠ²ΠΈΡ ΡΠ²ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ Π΄ΠΎ ΡΠ΅Ρ ΠΏΠΎΡ, ΠΏΠΎΠΊΠ° ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ°ΠΉΠ»Π° Β«fΒ» Π½Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡΡ. Π ΡΠΎ ΠΆΠ΅ Π²ΡΠ΅ΠΌΡ ΠΏΡΠΎΡΠ΅ΡΡ B ΠΏΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Β«a/b/c/dΒ» ΠΈ ΠΏΡΠΈΠΎΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°ΠΉΠ»Π° Β«dΒ». ΠΡΠΎΡΠ΅ΡΡ A Π±ΡΠ΄Π΅Ρ ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ, Π½ΡΠΆΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΡ B, Π° ΠΏΡΠΎΡΠ΅ΡΡ B, Π² ΡΠ²ΠΎΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ, Π±ΡΠ΄Π΅Ρ ΡΠ΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΈΠ½Π΄Π΅ΠΊΡ, Π½ΡΠΆΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΡ A. ΠΠ° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ ΡΡΠΎΡ ΠΊΠ»Π°ΡΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π²Π·Π°ΠΈΠΌΠ½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ΅Π½ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΡΠΎΠΌΡ, ΡΡΠΎ ΡΠ΄ΡΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΡΡ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° ΠΏΠΎΡΠ»Π΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ΠΈΡ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΠ²ΡΠ·Π΅ΠΉ. ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΏΠ΅ΡΠ²ΡΠΉ ΠΈΠ· ΡΠ΅ΡΡΡΡΠΎΠ² (ΠΈΠ½Π΄Π΅ΠΊΡ) ΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½ ΠΏΡΠΈ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΈ ΠΊ ΡΠ»Π΅Π΄ΡΡΡΠ΅ΠΌΡ ΡΠ΅ΡΡΡΡΡ, Π²Π·Π°ΠΈΠΌΠ½Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π½Π΅ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ.
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°Π΅Ρ, ΠΊΠ°ΠΊ Π΄Π²Π° ΠΏΡΠΎΡΠ΅ΡΡΠ° ΠΌΠΎΠ³ΡΡ Π·Π°ΠΉΡΠΈ Π² ΡΡΠΏΠΈΠΊ, Π΅ΡΠ»ΠΈ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π½Π΅ Π±ΡΠ»Π° ΡΠ½ΡΡΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°. ΠΠ΄ΠΈΠ½ΠΎΡΠ½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡ ΠΌΠΎΠΆΠ΅Ρ ΡΠ°ΠΊΠΆΠ΅ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°ΡΡ ΡΠ°ΠΌΠΎΠ³ΠΎ ΡΠ΅Π±Ρ. ΠΡΠ»ΠΈ ΠΎΠ½ Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΡΡΠ½ΠΊΡΠΈΡ:
link("a/b/c", "a/b/c/d");
ΡΠΎ Π² Π½Π°ΡΠ°Π»Π΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° ΠΎΠ½ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΠ°ΠΉΠ»Π° Β«cΒ»; Π΅ΡΠ»ΠΈ Π±Ρ ΡΠ΄ΡΠΎ Π½Π΅ ΡΠ½ΠΈΠΌΠ°Π»ΠΎ Π±Ρ Ρ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΡ, ΠΏΡΠΎΡΠ΅ΡΡ Π·Π°ΡΠ΅Π» Π±Ρ Π² ΡΡΠΏΠΈΠΊ, Π·Π°ΠΏΡΠΎΡΠΈΠ² ΠΈΠ½Π΄Π΅ΠΊΡ Β«cΒ» ΠΏΡΠΈ ΠΏΠΎΠΈΡΠΊΠ΅ ΡΠ°ΠΉΠ»Π° Β«dΒ». ΠΡΠ»ΠΈ Π±Ρ Π΄Π²Π° ΠΏΡΠΎΡΠ΅ΡΡΠ°, ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡΠΎΡΠ΅ΡΡ, Π½Π΅ ΠΌΠΎΠ³Π»ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠ°ΡΡ ΡΠ²ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΈΠ·-Π·Π° Π²Π·Π°ΠΈΠΌΠ½ΠΎΠΉ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ (ΠΈΠ»ΠΈ ΡΠ°ΠΌΠΎΠ±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ), ΡΡΠΎ Π² ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ΅ ΠΏΡΠΎΠΈΠ·ΠΎΡΠ»ΠΎ Π±Ρ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅? ΠΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ²Π»ΡΡΡΡΡ ΡΠ΅ΠΌΠΈ ΡΠ΅ΡΡΡΡΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΡΡΡΡ ΡΠΈΡΡΠ΅ΠΌΠΎΠΉ Π·Π° ΠΊΠΎΠ½Π΅ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ, ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΈΠ³Π½Π°Π»Π° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΏΡΠΈΡΠΈΠ½ΠΎΠΉ Π²ΠΎΠ·ΠΎΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠΌ ΡΠ²ΠΎΠ΅ΠΉ ΡΠ°Π±ΠΎΡΡ (Π³Π»Π°Π²Π° 7). Π‘Π»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π²ΡΠΉΡΠΈ ΠΈΠ· ΡΡΠΏΠΈΠΊΠ° Π±Π΅Π· ΠΏΠ΅ΡΠ΅Π·Π°Π³ΡΡΠ·ΠΊΠΈ. ΠΡΠ»ΠΈ ΠΊ ΡΠ°ΠΉΠ»Π°ΠΌ, Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΠΌ ΠΏΡΠΎΡΠ΅ΡΡΠ°ΠΌΠΈ, Π½Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ΅Π½ΠΈΠΉ ΡΠΎ ΡΡΠΎΡΠΎΠ½Ρ Π΄ΡΡΠ³ΠΈΡ ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ², Π²Π·Π°ΠΈΠΌΠ½Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° Π½Π΅ Π·Π°ΡΡΠ°Π³ΠΈΠ²Π°Π΅Ρ ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅. ΠΠ΄Π½Π°ΠΊΠΎ, Π»ΡΠ±ΡΠ΅ ΠΏΡΠΎΡΠ΅ΡΡΡ, ΠΎΠ±ΡΠ°ΡΠΈΠ²ΡΠΈΠ΅ΡΡ ΠΊ ΡΡΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ (ΠΈΠ»ΠΈ ΠΎΠ±ΡΠ°ΡΠΈΠ²ΡΠΈΠ΅ΡΡ ΠΊ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ ΡΠ΅ΡΠ΅Π· Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Π½ΡΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³), Π½Π΅ΠΏΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π·Π°ΠΉΠ΄ΡΡ Π² ΡΡΠΏΠΈΠΊ. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΅ΡΠ»ΠΈ Π·Π°Π±Π»ΠΎΠΊΠΈΡΠΎΠ²Π°Π½Ρ ΡΠ°ΠΉΠ»Ρ Β«/binΒ» ΠΈΠ»ΠΈ Β«/usr/binΒ» (ΠΎΠ±ΡΡΠ½ΡΠ΅ Ρ ΡΠ°Π½ΠΈΠ»ΠΈΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄) ΠΈΠ»ΠΈ ΡΠ°ΠΉΠ» Β«/bin/shΒ» (ΠΊΠΎΠΌΠ°Π½Π΄Π½ΡΠΉ ΠΏΡΠΎΡΠ΅ΡΡΠΎΡ shell), ΠΏΠΎΡΠ»Π΅Π΄ΡΡΠ²ΠΈΡ Π΄Π»Ρ ΡΠΈΡΡΠ΅ΠΌΡ Π±ΡΠ΄ΡΡ Π³ΠΈΠ±Π΅Π»ΡΠ½ΡΠΌΠΈ.
5.16 UNLINΠ
Π‘ΠΈΡΡΠ΅ΠΌΠ½Π°Ρ ΡΡΠ½ΠΊΡΠΈΡ unlink ΡΠ΄Π°Π»ΡΠ΅Ρ ΠΈΠ· ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΡΠΎΡΠΊΡ Π²Ρ ΠΎΠ΄Π° Π΄Π»Ρ ΡΠ°ΠΉΠ»Π°. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ Π²ΡΠ·ΠΎΠ²Π° ΡΡΠ½ΠΊΡΠΈΠΈ unlink:
unlink(pathname);
Π³Π΄Π΅ pathname ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°, ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠ΅ ΠΈΠ· ΠΈΠ΅ΡΠ°ΡΡ ΠΈΠΈ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ². ΠΡΠ»ΠΈ ΠΏΡΠΎΡΠ΅ΡΡ ΡΠ°Π·ΡΡΠ²Π°Π΅Ρ Π΄Π°Π½Π½ΡΡ ΡΠ²ΡΠ·Ρ ΡΠ°ΠΉΠ»Π° Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ ΠΏΡΠΈ ΠΏΠΎΠΌΠΎΡΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ unlink, ΠΏΠΎ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΌΡ Π² Π²ΡΠ·ΠΎΠ²Π΅ ΡΡΠ½ΠΊΡΠΈΠΈ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ» Π½Π΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½, ΠΏΠΎΠΊΠ° Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Π½Π΅ ΡΠΎΠ·Π΄Π°Π½Π° Π΅ΡΠ΅ ΠΎΠ΄Π½Π° Π·Π°ΠΏΠΈΡΡ Ρ ΡΡΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΠ»Π΅Π΄ΡΡΡΠ΅Π³ΠΎ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ:
unlink("myfile");
fd = open("myfile", O_RDONLY);
ΡΡΠ½ΠΊΡΠΈΡ open Π·Π°Π²Π΅ΡΡΠΈΡΡΡ Π½Π΅ΡΠ΄Π°ΡΠ½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΠΊ ΠΌΠΎΠΌΠ΅Π½ΡΡ Π΅Π΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π² ΡΠ΅ΠΊΡΡΠ΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΉΠ»Π° Ρ ΠΈΠΌΠ΅Π½Π΅ΠΌ myfile. ΠΡΠ»ΠΈ ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠ΅ ΠΈΠΌΡ ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΡΠ²ΡΠ·ΡΡ ΡΠ°ΠΉΠ»Π° Ρ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ, ΡΠ΄ΡΠΎ Π² ΠΈΡΠΎΠ³Π΅ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ Π²ΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΎΠ½Π½ΡΠ΅ Π±Π»ΠΎΠΊΠΈ ΡΠ°ΠΉΠ»Π°. ΠΠ΄Π½Π°ΠΊΠΎ, Π΅ΡΠ»ΠΈ Ρ ΡΠ°ΠΉΠ»Π° Π±ΡΠ»ΠΎ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ²ΡΠ·Π΅ΠΉ, ΠΎΠ½ ΠΎΡΡΠ°Π΅ΡΡΡ Π²ΡΠ΅ Π΅ΡΠ΅ Π΄ΠΎΡΡΡΠΏΠ½ΡΠΌ ΠΏΠΎΠ΄ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ.

Π ΠΈΡΡΠ½ΠΎΠΊ 5.30. ΠΠ·Π°ΠΈΠΌΠ½Π°Ρ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ° ΠΏΡΠΎΡΠ΅ΡΡΠΎΠ² ΠΏΡΠΈ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ link
ΠΠ° Π ΠΈΡΡΠ½ΠΊΠ΅ 5.31 ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ Π°Π»Π³ΠΎΡΠΈΡΠΌ ΡΡΠ½ΠΊΡΠΈΠΈ unlink. Π‘Π½Π°ΡΠ°Π»Π° Π΄Π»Ρ ΠΏΠΎΠΈΡΠΊΠ° ΡΠ°ΠΉΠ»Π° Ρ ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠΉ ΡΠ²ΡΠ·ΡΡ ΡΠ΄ΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ ΠΌΠΎΠ΄ΠΈΡΠΈΠΊΠ°ΡΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° namei, ΠΊΠΎΡΠΎΡΠ°Ρ Π²ΠΌΠ΅ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°ΠΉΠ»Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°. Π―Π΄ΡΠΎ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΊ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠ°ΠΉΠ»Π° Π² ΠΏΠ°ΠΌΡΡΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌ iget. (ΠΡΠΎΠ±ΡΠΉ ΡΠ»ΡΡΠ°ΠΉ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠΉ Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π°Β».Β», Π±ΡΠ΄Π΅Ρ ΡΠ°ΡΡΠΌΠΎΡΡΠ΅Π½ Π² ΡΠΏΡΠ°ΠΆΠ½Π΅Π½ΠΈΠΈ). ΠΠΎΡΠ»Π΅ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΎΡΠΈΠ±ΠΎΠΊ ΠΈ (Π΄Π»Ρ ΠΈΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌΡΡ ΡΠ°ΠΉΠ»ΠΎΠ²) ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈΠ· ΡΠ°Π±Π»ΠΈΡΡ ΠΎΠ±Π»Π°ΡΡΠ΅ΠΉ Π·Π°ΠΏΠΈΡΠ΅ΠΉ Ρ Π½Π΅Π°ΠΊΡΠΈΠ²Π½ΡΠΌ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΡΠΌ ΡΠ΅ΠΊΡΡΠΎΠΌ (Π³Π»Π°Π²Π° 7) ΡΠ΄ΡΠΎ ΡΡΠΈΡΠ°Π΅Ρ ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π° ΠΈΠ· ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°: ΡΠ΄Π΅Π»Π°ΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°Π²Π½ΡΠΌ 0 Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π΄Π»Ρ ΠΎΡΠΈΡΡΠΊΠΈ ΠΌΠ΅ΡΡΠ°, Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΠΎΠ³ΠΎ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠ°ΠΉΠ»Π° Π² ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. ΠΠ°ΡΠ΅ΠΌ ΡΠ΄ΡΠΎ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ ΡΠΈΠ½Ρ ΡΠΎΠ½Π½ΡΡ Π·Π°ΠΏΠΈΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° Π½Π° Π΄ΠΈΡΠΊ, Π³Π°ΡΠ°Π½ΡΠΈΡΡΡ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ, ΡΡΠΎ ΠΏΠΎΠ΄ ΡΠ²ΠΎΠΈΠΌ ΠΏΡΠ΅ΠΆΠ½ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΠ°ΠΉΠ» ΡΠΆΠ΅ Π½Π΅ Π±ΡΠ΄Π΅Ρ Π΄ΠΎΡΡΡΠΏΠ΅Π½, ΡΠΌΠ΅Π½ΡΡΠ°Π΅Ρ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΠ²ΡΠ·Π΅ΠΉ ΠΈ Ρ ΠΏΠΎΠΌΠΎΡΡΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠ° iput ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΈΠ½Π΄Π΅ΠΊΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΎΠ³ΠΎ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π° ΠΈ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠΉ ΡΠ²ΡΠ·ΡΡ.
ΠΡΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ Π² ΠΏΠ°ΠΌΡΡΠΈ ΠΏΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ iput ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΡΠ°ΠΉΠ»Π° Ρ ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠΉ ΡΠ²ΡΠ·ΡΡ, Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΡ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΡΡΠ»ΠΎΠΊ ΠΈ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΠ²ΡΠ·Π΅ΠΉ ΡΡΠ°Π½ΠΎΠ²ΡΡΡΡ ΡΠ°Π²Π½ΡΠΌΠΈ 0, ΡΠ΄ΡΠΎ Π·Π°Π±ΠΈΡΠ°Π΅Ρ Ρ ΡΠ°ΠΉΠ»Π° ΠΎΠ±ΡΠ°ΡΠ½ΠΎ Π΄ΠΈΡΠΊΠΎΠ²ΡΠ΅ Π±Π»ΠΎΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ Π·Π°Π½ΠΈΠΌΠ°Π». ΠΠ° ΡΡΠΎΡ ΠΈΠ½Π΄Π΅ΠΊΡ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½ΠΈ ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ°ΠΉΠ»ΠΎΠ²ΡΡ ΠΈΠΌΠ΅Π½ ΠΈ ΠΈΠ½Π΄Π΅ΠΊΡ Π½Π΅Π°ΠΊΡΠΈΠ²Π΅Π½. ΠΠ»Ρ ΡΠΎΠ³ΠΎ, ΡΡΠΎΠ±Ρ Π·Π°Π±ΡΠ°ΡΡ Π΄ΠΈΡΠΊΠΎΠ²ΡΠ΅ Π±Π»ΠΎΠΊΠΈ, ΡΠ΄ΡΠΎ Π² ΡΠΈΠΊΠ»Π΅ ΠΏΡΠΎΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅Ρ ΡΠ°Π±Π»ΠΈΡΡ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ°, ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ Π²ΡΠ΅ Π±Π»ΠΎΠΊΠΈ ΠΏΡΡΠΌΠΎΠΉ Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠΈ Π½Π΅ΠΌΠ΅Π΄Π»Π΅Π½Π½ΠΎ (Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΎΠΌ free). Π§ΡΠΎ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π±Π»ΠΎΠΊΠΎΠ² ΠΊΠΎΡΠ²Π΅Π½Π½ΠΎΠΉ Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΠΈ, ΡΠ΄ΡΠΎ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ Π²ΡΠ΅ Π±Π»ΠΎΠΊΠΈ, ΠΏΠΎΡΠ²Π»ΡΡΡΠΈΠ΅ΡΡ Π½Π° ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ ΡΡΠΎΠ²Π½ΡΡ ΠΊΠΎΡΠ²Π΅Π½Π½ΠΎΡΡΠΈ, ΡΠ΅ΠΊΡΡΡΠΈΠ²Π½ΠΎ, ΠΏΡΠΈΡΠ΅ΠΌ Π² ΠΏΠ΅ΡΠ²ΡΡ ΠΎΡΠ΅ΡΠ΅Π΄Ρ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°ΡΡΡΡ Π±Π»ΠΎΠΊΠΈ Ρ ΠΌΠ΅Π½ΡΡΠΈΠΌ ΡΡΠΎΠ²Π½Π΅ΠΌ. ΠΠ½ΠΎ ΠΎΠ±Π½ΡΠ»ΡΠ΅Ρ Π½ΠΎΠΌΠ΅ΡΠ° Π±Π»ΠΎΠΊΠΎΠ² Π² ΡΠ°Π±Π»ΠΈΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠΈΠΌΠΎΠ³ΠΎ ΠΈΠ½Π΄Π΅ΠΊΡΠ° ΠΈ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ ΡΠ°ΠΉΠ»Π° Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΡΠ°Π²Π½ΡΠΌ 0. ΠΠ°ΡΠ΅ΠΌ ΡΠ΄ΡΠΎ ΠΎΡΠΈΡΠ°Π΅Ρ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅ ΠΏΠΎΠ»Π΅ ΡΠΈΠΏΠ° ΡΠ°ΠΉΠ»Π°, ΡΠΊΠ°Π·ΡΠ²Π°Ρ ΡΠ΅ΠΌ ΡΠ°ΠΌΡΠΌ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½, ΠΈ ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π΅Ρ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΏΠΎ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ ifree. Π―Π΄ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΡ ΠΊΠΎΡΡΠ΅ΠΊΡΠΈΡ Π½Π° Π΄ΠΈΡΠΊΠ΅, ΡΠ°ΠΊ ΠΊΠ°ΠΊ Π΄ΠΈΡΠΊΠΎΠ²Π°Ρ ΠΊΠΎΠΏΠΈΡ ΠΈΠ½Π΄Π΅ΠΊΡΠ° Π²ΡΠ΅ Π΅ΡΠ΅ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½Π° ΡΠΎ, ΡΡΠΎ ΠΈΠ½Π΄Π΅ΠΊΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ; ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ ΡΠ²ΠΎΠ±ΠΎΠ΄Π΅Π½ Π΄Π»Ρ Π½Π°Π·Π½Π°ΡΠ΅Π½ΠΈΡ Π΄ΡΡΠ³ΠΈΠΌ ΡΠ°ΠΉΠ»Π°ΠΌ.
Π°Π»Π³ΠΎΡΠΈΡΠΌ unlinkΠ²Ρ
ΠΎΠ΄Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ: ΠΈΠΌΡ ΡΠ°ΠΉΠ»Π°Π²ΡΡ
ΠΎΠ΄Π½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ: ΠΎΡΡΡΡΡΡΠ²ΡΠ΅Ρ{Β ΠΏΠΎΠ»ΡΡΠΈΡΡ ΡΠΎΠ΄ΠΈΡΠ΅Π»ΡΡΠΊΠΈΠΉ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠΉ ΡΠ²ΡΠ·ΡΡ (Π°Π»Π³ΠΎΡΠΈΡΠΌ namei);Β /* Π΅ΡΠ»ΠΈ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅ ΡΠ°ΠΉΠ»Π° Π²ΡΡΡΡΠΏΠ°Π΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ ΠΊΠ°ΡΠ°Π»ΠΎΠ³β¦ */Β if (ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠΉ ΠΈΠΌΠ΅Π½ΠΈ ΡΠ°ΠΉΠ»Π° ΡΠ²Π»ΡΠ΅ΡΡΡ ".")Β Β ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΡΡΠ»ΠΎΠΊ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ΅;Β elseΒ ΠΏΠΎΠ»ΡΡΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡ Π΄Π»Ρ ΡΠ°ΠΉΠ»Π° Ρ ΡΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠΉ ΡΠ²ΡΠ·ΡΡ (Π°Π»Π³ΠΎΡΠΈΡΠΌ iget);Β if (ΡΠ°ΠΉΠ» ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠΌ, Π½ΠΎ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π½Π΅ ΡΠ²Π»ΡΠ΅ΡΡΡ ΡΡΠΏΠ΅ΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ)Β {Β ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡΡ ΠΈΠ½Π΄Π΅ΠΊΡΡ (Π°Π»Π³ΠΎΡΠΈΡΠΌ iput);Β Β return (ΠΎΡΠΈΠ±ΠΊΡ);Β }Β if (ΡΠ°ΠΉΠ» ΠΈΠΌΠ΅Π΅Ρ ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΡΠΉ ΡΠ΅ΠΊΡΡ ΠΈ ΡΠ΅ΠΊΡΡΠ΅Π΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΡΡΠ΅ΡΡΠΈΠΊΠ° ΡΠ²ΡΠ·Π΅ΠΉ ΡΠ°Π²Π½ΠΎ 1)