top

๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

IT/๋ฆฌ๋ˆ…์Šค(CentOS)

๋ฆฌ๋ˆ…์Šค find ๋ช…๋ น์–ด(ํŒŒ์ผ ์œ„์น˜ ์ฐพ๊ธฐ)



find ๋ช…๋ น์–ด๋Š” ํŠน์ • ํŒŒ์ผ์˜ ์œ„์น˜๋ฅผ ๊ฒ€์ƒ‰ํ•˜๋Š” ๊ฒƒ์ด๋‹ค. find ๋ช…๋ น์–ด์˜ ๊ตฌ์กฐ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.


find ๊ฒฝ๋กœ ์˜ต์…˜ ์กฐ๊ฑด action    -> ๊ฒฝ๋กœ์—์„œ ์กฐ๊ฑด์— ๋งž๋Š” ํŒŒ์ผ์˜ ์œ„์น˜๋ฅผ ์•Œ๋ ค์คŒ


์—ฌ๊ธฐ์„œ action์€ -print(์ถœ๋ ฅ, ๊ธฐ๋ณธ๊ฐ’)๊ณผ -exec(์™ธ๋ถ€๋ช…๋ น์–ด)๊ฐ€ ์žˆ๋Š”๋ฐ ๊ทธ๋ƒฅ ์ฐพ์€ ํŒŒ์ผ์˜ ์œ„์น˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค๋ฉด -print๋ฅผ ์จ๋„ ๋˜๊ณ  ์ƒ๋žตํ•ด๋„ ๋œ๋‹ค. -exec๋Š” ์•„๋ž˜์— ์„ค๋ช…ํ•˜๊ฒ ๋‹ค.


 ์˜ต์…˜

 ์„ค๋ช… 

 ์˜ˆ์‹œ

 -name

 ํŒŒ์ผ์˜ ์ด๋ฆ„ ๊ฒ€์ƒ‰ 

 find /etc -name "abc.txt" : /etc ์—์„œ abc.txt๋ผ๋Š” ์ด๋ฆ„์„ ๊ฐ€์ง„ ํŒŒ์ผ ๊ฒ€์ƒ‰

 -user

 ์†Œ์œ ์ž 

 find /etc -user centos : /etc ๋””๋ ‰ํ„ฐ๋ฆฌ ์•ˆ์— ํŒŒ์ผ ์†Œ์œ ์ž๊ฐ€ 'centos'์ธ ํŒŒ์ผ ๊ฒ€์ƒ‰

 -perm

 ํ—ˆ๊ฐ€๊ถŒ

 find /etc -perm 644 : /etc ๋””๋ ‰ํ„ฐ๋ฆฌ ์•ˆ์— ํŒŒ์ผ ํ—ˆ๊ฐ€๊ถŒ์ด 644์ธ ํŒŒ์ผ ๊ฒ€์ƒ‰ 

 -size

 ํฌ๊ธฐ

 find /etc -size +10k -size -100k : /etc ๋””๋ ‰ํ„ฐ๋ฆฌ ์•ˆ์— ํŒŒ์ผ ํฌ๊ธฐ๊ฐ€ 10k~100k ์ธ ํŒŒ์ผ ๊ฒ€์ƒ‰



find์˜ ๊ณ ๊ธ‰ ์‚ฌ์šฉ์„ ์•Œ์•„๋ณด์ž. find๋กœ ํŒŒ์ผ์„ ์ฐพ๋Š” ๊ฒƒ์—์„œ ๋๋‚ด์ง€ ์•Š๊ณ , ์ฐพ์€ ํŒŒ์ผ์„ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ์ฝ๋Š” ๋“ฑ์˜ ํ™œ๋™์„ ํ•˜๊ณ  ์‹ถ์„ ๋•Œ๊ฐ€ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ์ด๋Ÿด ๋•Œ์˜ find ๋ช…๋ น์–ด๋Š” ์•„๋ž˜์™€ ๊ฐ™์€ ๊ตฌ์กฐ๋กœ ์“ฐ์ธ๋‹ค.

find ๊ฒฝ๋กœ ์˜ต์…˜ ์กฐ๊ฑด -exec ์‚ฌ์šฉํ• ๋ช…๋ น์–ด {} \;     -> find๋กœ ์ฐพ์€ ๊ฒฐ๊ณผ๋ฅผ '์‚ฌ์šฉํ• ๋ช…๋ น์–ด'๋กœ ์‹คํ–‰์‹œํ‚จ๋‹ค.


-์˜ˆ์‹œ-

# find /home -name "*.swp" -exec rm {} \;   -> /home ๋””๋ ‰ํ„ฐ๋ฆฌ ๋‚ด์— ํ™•์žฅ์ž๊ฐ€ swp์ธ ํŒŒ์ผ์„ ์‚ญ์ œ

# find ~ size 0k -exec ls -l {} \;    -> ์‚ฌ์šฉ์ž์˜ ํ™ˆ ๋””๋ ‰ํ„ฐ๋ฆฌ์—์„œ ํฌ๊ธฐ๊ฐ€ 0k์ธ ํŒŒ์ผ๋“ค์˜ ๋ชฉ๋ก์„ ์ƒ์„ธํžˆ ์ถœ๋ ฅ


์ด ๋ช…๋ น์–ด์˜ ์ž์„ธํ•œ ์˜๋ฏธ๋Š” ์•„๋ž˜์™€ ๊ฐ™๋‹ค.