Π’Π°Π±Π»ΠΈΡΠ° 17.5. ΠΠ΅ΠΉΡΡΠ²ΠΈΠ΅ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ² -and/-or ΠΊΠΎΠΌΠ°Π½Π΄Ρ find
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ1
ΠΠΏΠ΅ΡΠ°ΡΠΎΡ
ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅2...
ΠΡΡΠΈΠ½Π°
-and
ΠΡΠ΅Π³Π΄Π° Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ
ΠΠΎΠΆΡ
-and
ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ
ΠΡΡΠΈΠ½Π°
-or
ΠΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ
ΠΠΎΠΆΡ
-or
ΠΡΠ΅Π³Π΄Π° Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ
ΠΠΎΡΠ΅ΠΌΡ ΡΠ°ΠΊ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ? ΠΡΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π΄Π»Ρ ΠΏΠΎΠ²ΡΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ. ΠΠΎΠ·ΡΠΌΠ΅ΠΌ Π΄Π»Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ -and. ΠΡ Π·Π½Π°Π΅ΠΌ, ΡΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅1 -and Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅2 Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΡΠΈΠ½Π½ΡΠΌ, Π΅ΡΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅1 Π²Π΅ΡΠ½Π΅Ρ Π»ΠΎΠΆΠ½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, ΠΏΠΎΡΡΠΎΠΌΡ Π½Π΅Ρ ΡΠΌΡΡΠ»Π° Π²ΡΡΠΈΡΠ»ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅2. ΠΠ½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎ, Π΅ΡΠ»ΠΈ ΠΈΠΌΠ΅Π΅ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅1 -or Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅2 ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅1 Π²Π΅ΡΠ½Π΅Ρ ΠΈΡΡΠΈΠ½Π½ΡΠΉ ΡΠ΅Π·ΡΠ»ΡΡΠ°Ρ, Π½Π΅Ρ ΡΠΌΡΡΠ»Π° Π²ΡΡΠΈΡΠ»ΡΡΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅2, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠΆΠ΅ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ, ΡΡΠΎ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅1 -or Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅2 ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΈΡΡΠΈΠ½Π½ΡΠΌ.
ΠΡΠΎ ΡΠ΄ΠΎΠ±Π½ΠΎ, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΡΠΊΠΎΡΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ. ΠΠΎ ΠΏΠΎΡΠ΅ΠΌΡ ΡΡΠΎ ΡΠ°ΠΊ Π²Π°ΠΆΠ½ΠΎ Π΄Π»Ρ Π½Π°Ρ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΌΡ ΠΌΠΎΠΆΠ΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π°Π½Π½ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΎ ΠΊΠΎΡΠΎΡΡΡ ΡΠ°ΡΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π΄Π°Π»Π΅Π΅.
ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ
ΠΠ°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΠΏΡΠΎΠ±ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ Π΄Π΅ΠΉΡΡΠ²ΠΈΡ Π² ΠΏΡΠΎΡΠ΅ΡΡΠ΅ ΠΏΠΎΠΈΡΠΊΠ°! ΠΠΌΠ΅ΡΡ ΡΠΏΠΈΡΠΎΠΊ Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°ΠΌΠΈ ΡΠ°Π±ΠΎΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ find ΡΠΆΠ΅ Π½Π΅ΠΏΠ»ΠΎΡ ΠΎ, Π½ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΡΠ΅, ΡΡΠΎ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ Π½Π΅ΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ°ΠΌΠΈ ΡΠΏΠΈΡΠΊΠ°. Π ΡΡΠ°ΡΡΡΡ, find ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ Π½Π°ΡΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°ΡΡΡ Π½Π° ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ°Ρ ΠΏΠΎΠΈΡΠΊΠ°.
ΠΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ
Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΏΠΎΡΠΎΠ±ΠΎΠ² ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ. ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° Π²Π·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° Π½Π΅ΠΏΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π² ΡΠ°Π±Π». 17.6.
Π’Π°Π±Π»ΠΈΡΠ° 17.6. ΠΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ find
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ
ΠΠΏΠΈΡΠ°Π½ΠΈΠ΅
-delete
Π£Π΄Π°Π»ΡΠ΅Ρ ΡΠ΅ΠΊΡΡΠΈΠΉ Π½Π°ΠΉΠ΄Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ»
-ls
ΠΠ΅ΠΉΡΡΠ²ΡΠ΅Ρ ΡΠΊΠ²ΠΈΠ²Π°Π»Π΅Π½ΡΠ½ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ ls -dils Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°. Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄
ΠΡΠ²ΠΎΠ΄ΠΈΡ ΠΏΠΎΠ»Π½ΡΠΉ ΠΏΡΡΡ ΠΊ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠΌΡ ΡΠ°ΠΉΠ»Ρ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄. ΠΡΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ, Π΅ΡΠ»ΠΈ Π½Π΅ ΡΠΊΠ°Π·Π°Π½Π° Π½ΠΈΠΊΠ°ΠΊΠ°Ρ Π΄ΡΡΠ³Π°Ρ
-quit
ΠΠ°Π²Π΅ΡΡΠ°Π΅Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΏΠΎΡΠ»Π΅ ΠΎΠ±Π½Π°ΡΡΠΆΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠ³ΠΎ ΡΠΎΠ²ΠΏΠ°Π΄Π΅Π½ΠΈΡ
ΠΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΠΌΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π·Π΄Π΅ΡΡ. ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡΠΈ Π½Π° ΡΡΡΠ°Π½ΠΈΡΠ΅ ΡΠΏΡΠ°Π²ΠΎΡΠ½ΠΎΠ³ΠΎ ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²Π° (man) Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ find.
Π Π½Π°ΡΠ΅ΠΌ ΠΏΠ΅ΡΠ²ΠΎΠΌ ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΠΌΡ Π²ΡΠΏΠΎΠ»Π½ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
find ~
ΠΠ½Π° Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³ΠΎΠ², Ρ ΡΠ°Π½ΡΡΠΈΡ ΡΡ Π² Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅. Π‘ΠΏΠΈΡΠΎΠΊ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡ ΠΏΡΠΎΡΡΠΎ ΠΏΠΎΡΠΎΠΌΡ, ΡΡΠΎ Π² ΠΎΡΡΡΡΡΡΠ²ΠΈΠ΅ Π΄ΡΡΠ³ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΏΡΠ΅Π΄ΠΏΠΎΠ»Π°Π³Π°Π΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -print. Π’ΠΎ Π΅ΡΡΡ ΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π±Ρ Π²ΡΡΠ°Π·ΠΈΡΡ ΡΠ°ΠΊ:
find ~ -print
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΡ find ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π΄Π»Ρ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΡΠ°ΠΉΠ»ΠΎΠ², ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΠΌ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π° ΡΠ΄Π°Π»ΠΈΡ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .BAK (ΠΊΠΎΡΠΎΡΠΎΠ΅ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ΅Π½ΠΈΠΉ ΡΠ΅Π·Π΅ΡΠ²Π½ΡΡ ΠΊΠΎΠΏΠΈΠΉ ΡΠ°ΠΉΠ»ΠΎΠ²):
find ~ -type f -name '*.BAK' -delete
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° Π½Π°ΠΉΠ΄Π΅Ρ Π² Π΄ΠΎΠΌΠ°ΡΠ½Π΅ΠΌ ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π΅ (ΠΈ Π²ΠΎ Π²Π»ΠΎΠΆΠ΅Π½Π½ΡΡ ΠΏΠΎΠ΄ΠΊΠ°ΡΠ°Π»ΠΎΠ³Π°Ρ ) ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π²ΡΠ΅ ΡΠ°ΠΉΠ»Ρ Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .BAK ΠΈ ΡΠ΄Π°Π»ΠΈΡ ΠΈΡ .
ΠΠΠΠΠΠΠΠ
ΠΠ±ΡΠ°ΡΠΈΡΠ΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -delete ΡΠ»Π΅Π΄ΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ ΠΎΡΠΎΠ±ΡΠΌΠΈ ΠΏΡΠ΅Π΄ΠΎΡΡΠΎΡΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ. ΠΡΠ΅Π³Π΄Π° ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΠΏΡΠΎΠ²Π΅ΡΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΏΠΎΠ΄ΡΡΠ°Π²ΠΈΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -print Π²ΠΌΠ΅ΡΡΠΎ -delete, ΡΡΠΎΠ±Ρ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ, ΡΡΠΎ ΠΎΠ½Π° Π½Π΅ ΡΠ΄Π°Π»ΠΈΡ Π½ΠΈΡΠ΅Π³ΠΎ Π»ΠΈΡΠ½Π΅Π³ΠΎ.
ΠΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΡ, Π΄Π°Π²Π°ΠΉΡΠ΅ ΠΏΠΎΡΠΌΠΎΡΡΠΈΠΌ, ΠΊΠ°ΠΊ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π²ΠΎΠ·Π΄Π΅ΠΉΡΡΠ²ΡΡΡ Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ. ΠΠ·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° ΡΠ»Π΅Π΄ΡΡΡΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
find ~ -type f -name '*.BAK' -print
ΠΠ°ΠΊ Π²ΠΈΠ΄ΠΈΡΠ΅, ΡΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠ΅Ρ ΠΎΠ±ΡΡΠ½ΡΠ΅ ΡΠ°ΠΉΠ»Ρ (-type f) Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅ΠΌ .BAK (-name '*.BAK') ΠΈ Π²ΡΠ²ΠΎΠ΄ΠΈΡ ΠΎΡΠ½ΠΎΡΠΈΡΠ΅Π»ΡΠ½ΡΠ΅ ΠΏΡΡΠΈ ΠΊ Π½ΠΈΠΌ Π² ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΡΠΉ Π²ΡΠ²ΠΎΠ΄ (-print). ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ°Π±ΠΎΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΡΡΡ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΌΠΈ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡΠΌΠΈ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ΅ΠΌΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°ΠΌΠΈ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ. ΠΠ°ΠΊ Π²Ρ ΠΏΠΎΠΌΠ½ΠΈΡΠ΅, ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°ΠΌΠΈ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠ°Π·ΡΠΌΠ΅Π²Π°Π΅ΡΡΡ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠ΅ -and. Π’Ρ ΠΆΠ΅ ΠΊΠΎΠΌΠ°Π½ΒΠ΄Ρ ΠΌΠΎΠΆΠ½ΠΎΒ Β Π²ΡΡΠ°Π·ΠΈΡΡ, Π΄ΠΎΠ±Π°Π²ΠΈΠ² Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ:
find ~ -type f -and -name '*.BAK' -and -print
Π’Π΅ΠΏΠ΅ΡΡ, ΠΈΠΌΠ΅Ρ ΠΏΠ΅ΡΠ΅Π΄ Π³Π»Π°Π·Π°ΠΌΠΈ ΡΡΠΎ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅, Π²Π·Π³Π»ΡΠ½ΠΈΡΠ΅ Π½Π° ΡΠ°Π±Π». 17.7, Π³Π΄Π΅ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ, ΠΊΠ°ΠΊ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΡ Π²Π»ΠΈΡΡΡ Π½Π° ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ.
Π’Π°Π±Π»ΠΈΡΠ° 17.7. ΠΠ»ΠΈΡΠ½ΠΈΠ΅ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠΎΠ²
ΠΡΠΎΠ²Π΅ΡΠΊΠ°/ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ
ΠΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, ΠΊΠΎΠ³Π΄Π°...
-type f and -name '*.BAK' ΠΈΡΡΠΈΠ½Π½ΠΎ
-name '*.BAK'
-type f ΠΈΡΡΠΈΠ½Π½ΠΎ
-type f
ΠΡΠ΅Π³Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ, ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΡΡΠΎ ΠΏΠ΅ΡΠ²Π°Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°/ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ Π² ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΠΈ -and
Π’Π°ΠΊ ΠΊΠ°ΠΊ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠ°ΠΌΠΈ ΠΈ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡΠΌΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΡΡ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡΡ ΠΈΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ, ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ Π²ΡΠ²ΠΎΠ΄, ΡΡΠΎ ΠΈΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ ΡΠ»Π΅Π΄ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ³ΡΠ°Π΅Ρ Π²Π°ΠΆΠ½ΡΡ ΡΠΎΠ»Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π΅ΡΠ»ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡΡ ΠΏΠΎΡΡΠ΄ΠΎΠΊ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈ ΠΏΡΠΎΠ²Π΅ΡΠΎΠΊ, ΠΏΠΎΡΡΠ°Π²ΠΈΠ² ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -print Π½Π° ΠΏΠ΅ΡΠ²ΠΎΠ΅ ΠΌΠ΅ΡΡΠΎ, ΠΊΠΎΠΌΠ°Π½Π΄Π° Π±ΡΠ΄Π΅Ρ Π²Π΅ΡΡΠΈ ΡΠ΅Π±Ρ ΠΈΠ½Π°ΡΠ΅:
find ~ -print -and -type f -and -name '*.BAK'
ΠΡΠ° Π²Π΅ΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°ΠΉΠ» (ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -print Π²ΡΠ΅Π³Π΄Π° Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΡΡΠΈΠ½Π½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅), Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΎΠ²Π΅ΡΠΈΡ ΡΠΈΠΏ ΡΠ°ΠΉΠ»Π° ΠΈ Π΅Π³ΠΎ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΠ΅.
ΠΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ΅ΠΌΡΠ΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Π΅ΠΌ
ΠΠΎΠΌΠΈΠΌΠΎ ΠΏΡΠ΅Π΄ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π½ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²ΡΠ·ΡΠ²Π°ΡΡ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ»ΡΠ½ΡΠ΅ ΒΠΊΠΎΠΌΠ°Π½Π΄Ρ. Π’ΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΠΎ Ρ ΡΡΠΎΠΉ ΡΠ΅Π»ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -exec, ΡΡΠΎ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:
-exec ΠΊΠΎΠΌΠ°Π½Π΄Π° {} ;
Π³Π΄Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Π° β ΡΡΠΎ ΠΈΠΌΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ, {} β ΡΠΈΠΌΠ²ΠΎΠ»ΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ ΡΠ΅ΠΊΡΡΠ΅Π³ΠΎ ΠΏΡΡΠΈ ΠΊ ΡΠ°ΠΉΠ»Ρ ΠΈ ΡΠΎΡΠΊΠ° Ρ Π·Π°ΠΏΡΡΠΎΠΉ β ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ, ΠΎΠ±ΠΎΠ·Π½Π°ΡΠ°ΡΡΠΈΠΉ ΠΊΠΎΠ½Π΅Ρ ΠΊΠΎΠΌΠ°Π½ΒΠ΄Ρ. Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π΄Π΅ΠΌΠΎΠ½ΡΡΡΠΈΡΡΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ -exec Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΡΡΡΠ΅ΠΊΡΠ°, Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠ³ΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ -delete, ΠΎΠ±ΡΡΠΆΠ΄Π°Π²ΡΠ΅ΠΉΡΡ Π²ΡΡΠ΅:
-exec rm '{}' ';'
Π ΡΠ½ΠΎΠ²Π°, ΠΏΠΎΡΠΊΠΎΠ»ΡΠΊΡ ΡΠΈΠ³ΡΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ ΠΈ ΡΠΎΡΠΊΠ° Ρ Π·Π°ΠΏΡΡΠΎΠΉ ΠΈΠΌΠ΅ΡΡ ΡΠΏΠ΅ΡΠΈΠ°Π»ΡΠ½ΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΊΠΎΠΌΠ°Π½Π΄Π½ΠΎΠΉ ΠΎΠ±ΠΎΠ»ΠΎΡΠΊΠΈ, ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π·Π°ΠΊΠ»ΡΡΠ°ΡΡΡΡ Π² ΠΊΠ°Π²ΡΡΠΊΠΈ ΠΈΠ»ΠΈ ΡΠΊΡΠ°Π½ΠΈΡΠΎΠ²Π°ΡΡΡΡ.
ΠΡΠΎΠΌΠ΅ ΡΠΎΠ³ΠΎ, ΡΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ Π²ΡΠΏΠΎΠ»Π½ΡΡΡ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»ΡΡΠΊΠΈΠ΅ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΠΎ. ΠΡΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -exec ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠ΅ΠΉ -ok, ΠΏΠ΅ΡΠ΅Π΄ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ²ΠΎΠ΄ΠΈΡΡΡΡ Π·Π°ΠΏΡΠΎΡ:
find ~ -type f -name 'foo*' -ok ls -l '{}' ';'
< ls ... /home/me/bin/foo > ? y
-rwxr-xr-x 1 meΒ Β Β me 224 2011-10-29 18:44 /home/me/bin/foo
< ls ... /home/me/foo.txt > ? y
-rw-r--r-- 1 meΒ Β Β meΒ Β Β 0 2012-09-19 12:53 /home/me/foo.txt
ΠΡΠ° ΠΊΠΎΠΌΠ°Π½Π΄Π° ΠΈΡΠ΅Ρ ΡΠ°ΠΉΠ»Ρ Ρ ΠΈΠΌΠ΅Π½Π°ΠΌΠΈ, Π½Π°ΡΠΈΠ½Π°ΡΡΠΈΠΌΠΈΡΡ ΡΠΎ ΡΡΡΠΎΠΊΠΈ foo, ΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ls -l. ΠΠΏΠ΅ΡΠ°ΡΠΈΡ -ok Π·Π°ΠΏΡΠ°ΡΠΈΠ²Π°Π΅Ρ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΆΠ΄Π΅Π½ΠΈΠ΅ Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ, ΠΏΡΠ΅ΠΆΠ΄Π΅ ΡΠ΅ΠΌ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ ls.
Π£Π²Π΅Π»ΠΈΡΠ΅Π½ΠΈΠ΅ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΡΡΠΈ
ΠΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π·, ΠΊΠΎΠ³Π΄Π° ΠΎΠ±Π½Π°ΡΡΠΆΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°ΠΉΠ», ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΡΡΠΈΠΉ ΠΊΡΠΈΡΠ΅ΡΠΈΡΠΌ, ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ -exec Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ Π½ΠΎΠ²ΡΠΉ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΡΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° ΠΆΠ΅Π»Π°ΡΠ΅Π»ΡΠ½ΠΎ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΠΈΡΡ Π²ΡΠ΅ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ ΠΏΠΎΠΈΡΠΊΠ° ΠΈ Π·Π°ΠΏΡΡΡΠΈΡΡ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠΌΠ°Π½Π΄, ΡΠ°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ:
ls -l ΡΠ°ΠΉΠ»1
ls -l ΡΠ°ΠΉΠ»2
ΠΏΡΠ΅Π΄ΠΏΠΎΡΡΠΈΡΠ΅Π»ΡΠ½Π΅Π΅ Π±ΡΠ»ΠΎ Π±Ρ Π²ΡΠΏΠΎΠ»Π½ΠΈΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
ls -l ΡΠ°ΠΉΠ»1 ΡΠ°ΠΉΠ»2
ΠΠ΄Π΅ΡΡ ΠΊΠΎΠΌΠ°Π½Π΄Π° Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΡΠ°Π·, Π° Π½Π΅ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ. Π‘ΡΡΠ΅ΡΡΠ²ΡΠ΅Ρ Π΄Π²Π° ΡΠΏΠΎΡΠΎΠ±Π° Π΄ΠΎΠ±ΠΈΡΡΡΡ ΡΡΠΎΠ³ΠΎ: ΡΡΠ°Π΄ΠΈΡΠΈΠΎΠ½Π½ΡΠΉ, Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π²Π½Π΅ΡΠ½Π΅ΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ xargs, ΠΈ Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ, Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π½ΠΎΠ²ΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π² ΡΠ°ΠΌΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Π΅ find. ΠΠ±ΡΡΠ΄ΠΈΠΌ ΡΠ½Π°ΡΠ°Π»Π° Π°Π»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ ΡΠΏΠΎΡΠΎΠ±.
ΠΡΠ»ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡΡ Π·Π°Π²Π΅ΡΡΠ°ΡΡΠΈΠΉ ΡΠΈΠΌΠ²ΠΎΠ» ΡΠΎΡΠΊΠΈ Ρ Π·Π°ΠΏΡΡΠΎΠΉ Π·Π½Π°ΠΊΠΎΠΌ Β«ΠΏΠ»ΡΡΒ», Π² ΠΊΠΎΠΌΠ°Π½Π΄Π΅ find Π°ΠΊΡΠΈΠ²ΠΈΡΡΠ΅ΡΡΡ ΡΡΠ½ΠΊΡΠΈΡ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠΎΠ² Π² ΡΠΏΠΈΡΠΎΠΊ Π°ΡΠ³ΡΠΌΠ΅Π½ΡΠΎΠ² Π΄Π»Ρ Π²ΡΠ·ΠΎΠ²Π° Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΊΠ·Π΅ΠΌΠΏΠ»ΡΡΠ° ΡΡΠ΅Π±ΡΠ΅ΠΌΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ. ΠΠ΅ΡΠ½Π΅ΠΌΡΡ ΠΊ Π½Π°ΡΠ΅ΠΌΡ ΠΏΡΠΈΠΌΠ΅ΡΡ. ΠΠΎΠΌΠ°Π½Π΄Π°:
find ~ -type f -name 'foo*' -exec ls -l '{}' ';'
-rwxr-xr-x 1 meΒ Β Β me 224 2011-10-29 18:44 /home/me/bin/foo
-rw-r--r-- 1 meΒ Β Β meΒ Β Β 0 2012-09-19 12:53 /home/me/foo.txt
Π±ΡΠ΄Π΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡ ls Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π½Π°ΠΉΠ΄Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠ°ΠΉΠ»Π°. ΠΠ·ΠΌΠ΅Π½ΠΈΠ² ΠΊΠΎΠΌΠ°Π½Π΄Ρ, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:
find ~ -type f -name 'foo*' -exec ls -l '{}' +
-rwxr-xr-x 1 meΒ Β Β me 224 2011-10-29 18:44 /home/me/bin/foo