테스트 사이트 - 개발 중인 베타 버전입니다

learning the shell : 한파일을 subdirectory에 단번에 추가하자!!!

· 20년 전 · 2228
#!/bin/bash
############# start ##################
# copyright(c)조훈현
#시나리오 : 퇴근시간이 다되었고
#애인과 퇴근 1시간후에 약속이 되어있다.
#그런데 긴급한 상황으로 system에 1000명이 넘는 사용자의
#계정에 특정파일을 패치 해야한다.
#수동으로 한다면 4시간으로도 해결은 불가능하다.
#그러나 간단한 shell 프로그래밍은 애인과의 저녁시간을
#확보시켜준다.
#주의 : 단 사용자의 홈디렉토리가 한디렉토리의
#subdiretory 이어만 한다.
####################################

echo " input target file or directory: "
read target

echo " input destination directory : "
read destination

for dir in `ls -l $destination | grep '\<d' | cut -c 57-100`
do

cp -r $target /$destination/$dir

done

echo "complete copy!!!"

exit 0
############# E N D #############

만약 home디렉토리가 /home의 subdiretory가 아니라면
----------------------------------------------
for dir in `ls -l $destination | grep '\<d' | cut -c 57-100`
do
cp -r $target /$destination/$dir
done
----------------------------------------------
를 아래의
------------------------------------------------------------
for dir in `tail +$(cut -f 1,3 -d: /etc/passwd | grep -n 500 | cut -f 1 -d:) /etc/passwd | cut -f 6 -d:`
do
cp -r $target $dir
done
------------------------------------------------------------
로 치환한다

주의!! 이프로그램 실행으로 일어나는 어떠한 책임도 저작권자는 책임이 없음을 밝힙니다.
학습용으로 사용하시길 권장합니다.~~^^<div class='small'>[이 게시물은 관리자님에 의해 2011-10-31 17:32:05 Linux에서 이동 됨]</div>

댓글 작성

댓글을 작성하시려면 로그인이 필요합니다.

로그인하기

게시글 목록

번호 제목
28772
10555
10554
10553
28770
28769
10552
10551
28768
10550
10549
10548
10547
28767
10546
10545
10544
28766
10541
10540
10538
10537
10535
10534
10533
10532
28760
10531
10530
28759
10527
10525
10523
10520
28758
28757
10519
10518
10517
10515
28756
10514
10512
10511
10510
10509
10508
10507
28755
28751
10506
10505
10504
10503
10499
10487
28748
10486
28747
10484
10483
10482
28746
10480
10476
10473
10472
28745
10460
10456
28739
10455
28738
10451
10448
10446
10445
10444
10442
10439
10408
10403
10400
10398
10397
10396
10391
10390
28733
10389
10383
10378
28732
10342
28731
10335
28730
28729
28727
10332