'분류 전체보기'에 해당되는 글 150건

  1. 2009.11.27 네트워크 관련 볼것
  2. 2009.11.24 27. CentOS 에서의 한글 설정 3
  3. 2009.11.23 26. ethtool 사용하기 spped 와 duplex 변경 6
  4. 2009.11.05 25. sort 명령어 2
  5. 2009.11.05 13. 파일 비교 스크립트 4 2
  6. 2009.10.21 12. 파일 개수 비교해서 삭제하는 스크립트 3
  7. 2009.09.19 11. SSH 접속 차단 스크립트 ( 5번 패스워드 틀리면 자동 차단) 2
  8. 2009.09.18 10. 파일비교 스크립트2 3
  9. 2009.09.15 24. tar 압축파일에 관해서
  10. 2009.09.10 9. 여러 파일 하나의 txt 파일로 합치기 스크립트 3
  11. 2009.09.10 8. 파일 내용 비교1 3
  12. 2009.08.13 [노을의시집] 10. 낮은 계단으로 2
  13. 2009.08.13 [노을의시집] 9. 기다림
  14. 2009.08.13 [노을의시집] 8. 그대 한번의 웃음이.......
  15. 2009.08.13 [노을의시집] 7. 새로움.......
  16. 2009.08.13 [노을의시집] 6. 그대가 나에게 ...
  17. 2009.08.12 [노을의시집] 5. 소중한 것은 ...
  18. 2009.08.12 [노을의시집] 4. 조지윈스턴
  19. 2009.08.12 [노을의시집] 3. 천년의 사랑이 아니어도 ...
  20. 2009.07.29 [노을의시집] 2. 전 지금까지 2
2009. 11. 27. 17:00

네트워크 관련 볼것

http://stone.backrush.com/sunfaq/d00003.html

2009. 11. 24. 13:21

27. CentOS 에서의 한글 설정

일단 기본적으로 CentOS 를 설치하게 되면
기본 언어를 영어로 설정했다면 쉘 역시 영어로 설정이 된다.

이것을 아예 한글로 변경하거나 또는 로그인쉘에서만 따로 한글로 사용하도록 설정하는 방법이 있다.

1. 시스템 전체의 언어를 한글로 변경

root 로 로그인 이후  /etc/sysconfig/i18n 파일을 아래와 같이 수정한다.
만약을 위해 다른 이름으로 백업을 해둔다음에 진행하자.

[root@localhost ~]# more /etc/sysconfig/i18n
LANG="en_US.UTF-8"
SYSFONT="latarcyrheb-sun16"
SUPPORTED="en_US.UTF-8:en_US.en:ko_KR.UTF-8:ko_KR.eucKR:ko_KR:ko"


2. 로그인쉘 상에서의 특정 유저만 한글로 표현 ( 나머지 유저는 영어로 그대로 )

일단 그 유저의 특정유저로 로그인하고 나서 hidden file ( 숨김파일은 파일이름 앞에 점하나가 붙는다 ) 인
.bash_profile 안에 다음과 같은 라인을 추가시킨다.
( 숨김파일의 리스트를 보기 위해서는 ls -al 로 확인한다 )

그러면 그 유저로 로그인했을 때는 터미널 상에서 한글이 제대로 표현된다.
파일명이 한글인 경우 잘 표현되는지 확인하면 되겠다.

export LANG=ko_KR.eucKR


3. 파일질라 ( Filezilla ) 로 접속시 한글이 보이지 않거나 깨지는 현상

사이트관리자에서 <문자셋> 탭에서
<사용자정의문자셋 사용>을 클릭하고
아래 칸에 CP949 로 설정을 하고 다시 접속하면 한글이 잘 보이게 된다.

참고 : 파일질라 다운받는 곳은 www.filezilla-project.org
2009. 11. 23. 00:17

26. ethtool 사용하기 spped 와 duplex 변경


ethtool 을 사용해서 네트워크 포트의 speed duplex autonego 를 조정할 수 있다.

[root@localhost ~]# ethtool eth1
Settings for eth1:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
        Advertised auto-negotiation: No
        Speed: 100Mb/s
        Duplex: Full
        Port: MII
        PHYAD: 32
        Transceiver: internal
        Auto-negotiation: off
        Supports Wake-on: pumbg
        Wake-on: d
        Current message level: 0x00000007 (7)
        Link detected: no

[root@localhost ~]# ethtool -s eth1 speed 10 duplex full autoneg on
[root@localhost ~]# ethtool eth1
Settings for eth1:
        Supported ports: [ TP MII ]
        Supported link modes:   10baseT/Half 10baseT/Full
                                100baseT/Half 100baseT/Full
        Supports auto-negotiation: Yes
        Advertised link modes:  10baseT/Full
        Advertised auto-negotiation: Yes
        Speed: 10Mb/s
        Duplex: Half
        Port: MII
        PHYAD: 32
        Transceiver: internal
        Auto-negotiation: on
        Supports Wake-on: pumbg
        Wake-on: d
        Current message level: 0x00000007 (7)
        Link detected: no

여기서 ethtool 은 해당되는 네트워크 포트가 리눅스 커널에서 어떻게 인식되어서 동작하는지를 확인할 수 있다.

위의 방법은 임시로 적용이 된 것이고 OS가 리부팅되면 다시 초기화되어버리므로

아예 /etc/sysconfig/network-scripts 밑에 있는 ifcfg-eth0 파일에 아래 라인을 넣어줘서 

OS가 리부팅되도 계속 적용이 되도록 할 수 있다.



DEVICE=eth0

BOOTPROTO=dhcp

ONBOOT=yes

TYPE=Ethernet

ETHTOOL_OPTS="speed 100 duplex full autoneg off"


ETHTOOL_OPTS 의 안의 필드를 보면
speed 뒤의 숫자는 100 이면 100M 를 지정하고
1000 이면 1000M 즉 1G 를 정해준다.

네트워크 인터페이스 드라이버에 따라 저 옵션이 적용될 수도, 안 될 수도 있다.
그럴땐 mii-tool 이란 명령어로 되는지 확인 필요.

Duplex 값은 half 와 full 이 있는데 한국말로는 반이중 / 전이중 이런 어려운 용어가 있다.
하지만 Full 이 좋은 것은 당연지사.

마지막의 autoneg 는  auto-nego 를 스위치와 하지 않도록 off 한다는 의미이다.
보통 저렇게 리눅스 서버에서 자동협상 기능을 끈다면 스위치쪽에서도 동일한 speed 와 duplex 를 맞쳐서 사용하는 것이 정석이다.

저 서버에 연결된 상위의 스위치 ( 시스코이든 3COM 이든 ) 에서도 해당 포트에 static 으로 고정되게 speed 와 duplex 를 서버에 설정해준것과 동일하게 맞춰야 한다.


2009. 11. 5. 21:55

25. sort 명령어


sort 는 파일을 정렬하거나 중복을 제거 할 수도 있는 강력한 명령어이다.

1. sort  a.txt

2. sort -r a.txt
역순(오름차순) 으로 정렬

3. sort -k 2 a.txt
두번째 필드를 기준으로 내림차순으로 정렬

4. sort -u a.txt
내림차순으로 정렬하면서 중복된 라인을 제거

응용

5. sort -u -k 2 a.txt
두번째 필드 기준으로 내림차순 정렬하면서 중복라인 제거

6. sort -u -r -k 2 a.txt
두번째 필드 기준으로 오름차순 정렬하면서 중복라인 제거


2009. 11. 5. 21:31

13. 파일 비교 스크립트 4

원본 파일(a.txt)에서  특정한 파일의 숫자들(b.txt) 을 뺀 나머지 라인들을 구하는 것

우선 원본 파일 변경되므로 원본파일은 다른 이름으로 변경시켜 놓는다.
#!/bin/bash
dir=$PWD
count=0
cp $dir/a.txt $dir/a.txt_org

for mdn in `cat $dir/b.txt | awk -F, '{print $1}'`
do
      sed -e "/"$mdn"/d" $dir/a.txt > $dir/imsy.txt
      cat $dir/imsy.txt > $dir/a.txt
      count=`expr $count + 1`
done
echo "count is =" $count

rm $dir/imsy.txt
작업할 디렉토리 지정
반복문이 몇번 실행되었는지 체크하기 위한 count 변수 지정
원본 a.txt 파일을 a.txt_org 으로 백업한다.

(2) for mdn in `cat /home/bjh/homepcssn/test/b.txt | awk -F, '{print $1}'`
for 반복문을 사용
mdn 이란 변수에 b.txt 파일에서 숫자가 있는 필드만 awk 로 골라내어서 for 문을 사용해 차례로 입력하도록 한다
( 나중에는 cat 부분만 변경해서 사용 / 숫자만 있는 파일이면 cat 만 써도 됨 )
awk 에서 -F 옵션은 구분자를 지정할때 사용 ( 지정하지 않으면 빈칸으로 필드 구분 )
즉 쉼표(,) 로 구분했을때 첫번째 필드가 숫자가 되기 때문에 사용
여기서 $mdn 이란 변수에는 숫자(전화번호) 만 들어간다

(3) sed -e "/"$mdn"/d" $dir/aa.txt > $dir/imsy.txt
변수 mdn이 포함된 라인만 지운 나머지 모든 라인을 임시파일 imsy.txt 파일에 저장한다.

(4) cat imsy.txt > a.txt
임시파일을 원본 a.txt 에 덮어쓴다
이때 첫번재 mdn 값을 제외한 모든 라인이 a.txt 에 덮어쓴다.

(5) count=`expr $count + 1`
반복문이 1번 반복될때마다 count 변수는 하나씩 증가한다.

(6) done
mdn 변수의 개수만큼 돌아가고 나서 반복문 종료

(7) echo "count is =" $count
반복문이 몇번 실행되었는지 확인
즉 mdn 변수가 몇번 변했는지도 알 수 있다.
즉 b.txt 에서 숫자가 몇라인이 들어있는지 알 수 있다

(8) rm $dir/imsy.txt
임시파일 삭제




최종 파일 비교 스크립트 -> http://darkrang.tistory.com/219


2009. 10. 21. 17:12

12. 파일 개수 비교해서 삭제하는 스크립트

같은 디렉토리에 쌓이는 파일 개수를 count 해서 특정한 값
이상이 되면 예전 파일 부터 삭제하는 스크립트


#!/bin/bash
DIR=$PWD
ls -l | grep PFX_COUNT | wc -l > A.txt
A=`cat $DIR/A.txt`
echo $A

if [ $A -lt 3 ]
then
echo "Count is low"
else
echo "Count is high"
        ls -lt | grep PFX_COUNT > $DIR/imsy.txt
        sed '1,3d' $DIR/imsy.txt | awk '{print $9}' > $DIR/imsy2.txt
        cat $DIR/imsy2.txt
                for test in `cat $DIR/imsy2.txt`
                do
                rm -rf $test
                done
fi
rm -rf $DIR/imsy.txt
rm -rf $DIR/imsy2.txt
rm -rf $DIR/A.txt

(1) ls -l | grep PFX_COUNT | wc -l > A.txt 

DIR 위치에 있는 파일들 중에서 PFX_COUNT 란 이름을 가진 파일들의 개수를 A.txt 에 저장

(2) A=`cat $DIR/A.txt`
A라는 변수에 그 개수를 저장

(3) if [ $A -lt 3 ]
만약 그 값이 3 보다 작다면 바로 아래 라인으로 이동해서 그 다음 명령 수행
만약 3보다 크면 else 밑의 명령들을 수행

(4)         ls -lt | grep PFX_COUNT > $DIR/imsy.txt
        sed '1,3d' $DIR/imsy.txt | awk '{print $9}' > $DIR/imsy2.txt
        cat $DIR/imsy2.txt

PFX_COUNT 가 포함된 파일의 리스트를 imsy2.txt 에 저장

(5)            for test in `cat $DIR/imsy2.txt`
                do
                rm -rf $test
                done

for 문으로 돌리면서 삭제해준다.

(6) 기타 임시txt 파일들을 삭제함


2009. 9. 19. 15:27

11. SSH 접속 차단 스크립트 ( 5번 패스워드 틀리면 자동 차단)

      1 #!/bin/bash
      2 days=`date +%d`
      3 savedir='/z_bjh/denylist'
      4 for i in $( cat /var/log/secure | grep "Failed password for" | awk '$2 = $days {print $13}' | sort | uniq -c | awk '$1 > 5 {print $2}'); do
      5 denyip=${i#::ffff:}
      6 echo "ALL:$denyip" >> $savedir
      7 done
      8 for a in $( cat /etc/hosts.deny | grep "ALL : " | awk '{print $3}' | sort | uniq -c | awk '{print $2}'); do
      9 echo "ALL : $a" >> $savedir
     10 done
     11 cp /etc/hosts.deny-before /etc/hosts.deny
     12 for b in $( cat $savedir | grep "ALL : " | awk '{print $3}' | sort | uniq -c | awk '{print $2}'); do
     13 echo "ALL : $b" >> /etc/hosts.deny
     14 done
     15 cat $savedir >> /etc/hosts.deny
     16 rm -f $savedir


일단 이 스크립트를 작성하기 전에 한가지ㄱㅏ 필요하다

/etc/hosts.deny 를  /etc/hosts.deny-before 라고 하나 복사해야한다.

그리고 /z_bjh/denylist 라는 파일을 하나 만들어주어야 한다.( 디렉토리는 마음대로 수정 )

하도 예전에 인터넷 여기저기 보고 만들어놓은 것인지라 .

위에서는 라인번호를 같이 표시했다. ( 왜냐하면 저걸 그대로 복사하면 라인이 바뀌게 되고 그럼 스크립트가 실행이 안되므로 ㅋㅋ )

원리는 간단하다 /var/log/secure 파일을 읽어서 접속 Fail 메시지를 count 해서 그 아이피만 추출하여
/etc/hosts.deny 에 등록해주는 것이다.

상용서버에도 돌려봤는데 정말 리눅스 해킹시도는 엄청나다.

이걸 사용하든지 아예 /etc/hosts.deny 에 ALL:ALL 로 해놓고 접속하는 곳의 아이피를 /etc/hosts.allow 에
등록시켜 놓고 사용하는게 편하다 ^^ㅋ


(1) 실사용방법은 위의 스크립트를 deny_ip.sh 라고 작성하여 만들고
(2) /etc/hosts.deny 를 복사하여 /etc/hosts.deny_defore 라고 하나 만들어주고
(3) touch /z_bjh/denylist 라고 하나 만들어줌

사용되다가 실제로 5번이 틀리면 자동으로 /etc/hosts.deny 에 아이피가 등록되고 접속이 아예할 수 없게 된다.
5분마다 /var/log/secure 파일을 검색해서 다시 추가해준다.
만약 secure 파일이 지나가버려서 새로운 secure 파일로 생성될 때에는
초기화가 된다.


2009. 9. 18. 13:57

10. 파일비교 스크립트2

이번에는 두개의 파일이 있고
A 라는 파일은 원본 파일로 데이터량이 많다
B 라는 파일은 A보단 양이 적다.

원하는 것은 A 에서 B 를 제외한 나머지의 데이터를 알고 싶다.


#!/bin/bash
A=/user1/si/z_bjh/a.txt
B=/user1/si/z_bjh/b.txt
sdiff $A $B > c.txt
sed -n "/</p" c.txt | awk '{print $1}' > d.txt


sdiff 라는 것은 아래와 같이 동작한다.

두 텍스트 파일을 동시에 같이 보면서 그 차이점을 살펴보려면, 다음과 같이 합니다.

   sdiff file1 file2

sdiff 명령은 두 파일을 각각 한 줄씩 서로 비교해 가면서, 두 파일의 내용을 모두 출력합니다.

그 줄이 서로 다른 경우는 | 기호, file1에만 있는 경우는 < 기호, file2에만 있는 경우는 > 기호, 두 줄이 서로 똑 같은 경우는 아무것도 없습니다



예를 들어 a.txt 에 1부터 8까지 넣고  b.txt 에 1부터 4까지 넣었다면 아래와 같이 나온다.
오른쪽의 < 표시는 a.txt 에는 존재하고 b.txt 에는 존재하지 않는 것이다.

sdiff a.txt b.txt
1                                                               1
2                                                               2
3                                                               3
4                                                               4
5                                                             <
6                                                             <
7                                                             <
8                                                             <




최종 파일 비교 스크립트 -> http://darkrang.tistory.com/219

2009. 9. 15. 14:57

24. tar 압축파일에 관해서


자 이젠 tar 파일을 보게 되는 순간 당황해하지 말고
단순히 (?) 압축파일이라고 생각하자.  윈도우에서 흔히 보던 zip 이라는 압축형식이 tar 로 달려졋을 뿐이다.

우선 tar 압축파일은 형식이 여러종류이며 그 때마다 푸는 방법도 달라져야 한다.
파일의 확장자를 우선 잘 보도록 하자

tar / tar.Z / tar.gz  등등 여러 파일이 있다.

구분을 해보면 tar 란 단순히 여러파일을 하나의 파일로 합치기만 했을 뿐이고,
그 외의 것들은 합친 하나의 tar 파일을  압축을 해놓은 것이다.
그런 파일들의 경우에는 우선 압축해제를 하고 나서 tar 를 풀어서 원래의 원본파일 여러개로 되돌리는 순서가 필요하다 .

예를 들어 tar 파일의 내용을 압축을 풀지 않고 보려면
tar -tvf TEST.tar

압축을 해제 하지 않고도 미리 tar 안의 어떤 파일들이 압축되어 있는지 확인이 가능하다.

첫번째로 tar 압축  그다음에 묶고 나서 풀어보자
만약 a.txt , b.txt, c.txt 라는 파일이 있다면
ls
a.txt  b.txt  c.txt
[bjh@localhost test2]$ tar cvf TEST.tar ./*.txt
./a.txt
./b.txt
./c.txt
[bjh@localhost test2]$ ls -ltr
합계 40
-rw-r--r-- 1 bjh users     3 12월  3 10:20 a.txt
-rw-r--r-- 1 bjh users     3 12월  3 10:21 b.txt
-rw-r--r-- 1 bjh users     4 12월  3 10:21 c.txt
-rw-r--r-- 1 bjh users 10240 12월  3 10:21 TEST.tar
[bjh@localhost test2]$ tar cvfz TEST.tar.gz ./*.txt
./a.txt
./b.txt
./c.txt
[bjh@localhost test2]$ ls -ltr
합계 48
-rw-r--r-- 1 bjh users     3 12월  3 10:20 a.txt
-rw-r--r-- 1 bjh users     3 12월  3 10:21 b.txt
-rw-r--r-- 1 bjh users     4 12월  3 10:21 c.txt
-rw-r--r-- 1 bjh users 10240 12월  3 10:21 TEST.tar
-rw-r--r-- 1 bjh users   161 12월  3 10:21 TEST.tar.gz


세개의 텍스트파일이 하나의 tar 파일로 묶어진 것을 볼 수 있다. 
( 압축이란 말은 잘 어울리지 않는다 ! 왜냐면 세개 파일의 크기를 더한 것이 tar 파일의 크기가 되기 때문에
실제로 압축이 일어난 것은 아니다. 그래서 묶는다란 표현을 난 더 좋아한다 )

그럼 압축을 해보도록 하자
압축하는 방식은 여러가지를 선택할 수 있다.
위에서 내렸던 명령어 중에 tar -cvfz  라는 명령어는 tar 로 우선 묶고 나서 gzip 으로 압축을 진행하는 것이다.

따로 따로 명령어를 두번 내려도 된다!
tar cvf TEST.tar ./*.txt
gzip TEST.tar

[root@localhost test4]# ls -l
total 0
-rw-r--r-- 1 root root 0 Dec 18 12:33 1.txt
-rw-r--r-- 1 root root 0 Dec 18 12:33 2.txt
-rw-r--r-- 1 root root 0 Dec 18 12:33 3.txt
[root@localhost test4]#
[root@localhost test4]# tar cvf TEST.tar ./*.txt
./1.txt
./2.txt
./3.txt
[root@localhost test4]#
[root@localhost test4]# ls -l
total 12
-rw-r--r-- 1 root root     0 Dec 18 12:33 1.txt
-rw-r--r-- 1 root root     0 Dec 18 12:33 2.txt
-rw-r--r-- 1 root root     0 Dec 18 12:33 3.txt
-rw-r--r-- 1 root root 10240 Dec 18 12:33 TEST.tar
[root@localhost test4]#
[root@localhost test4]# gzip TEST.tar
[root@localhost test4]#
[root@localhost test4]# ls -l
total 4
-rw-r--r-- 1 root root   0 Dec 18 12:33 1.txt
-rw-r--r-- 1 root root   0 Dec 18 12:33 2.txt
-rw-r--r-- 1 root root   0 Dec 18 12:33 3.txt
-rw-r--r-- 1 root root 142 Dec 18 12:33 TEST.tar.gz

위와 같이 tar 로 묶고 나서 gzip 으로 압축을 한 것을 볼 수 있다.
이렇게 압축된 것을 풀기 위해서는
tar xvf TEST.tar.gz 라고 입력한다.

[root@localhost test4]# tar -xvf TEST.tar.gz
./1.txt
./2.txt
./3.txt
[root@localhost test4]#
[root@localhost test4]# ls -l
total 4
-rw-r--r-- 1 root root   0 Dec 18 12:33 1.txt
-rw-r--r-- 1 root root   0 Dec 18 12:33 2.txt
-rw-r--r-- 1 root root   0 Dec 18 12:33 3.txt
-rw-r--r-- 1 root root 142 Dec 18 12:33 TEST.tar.gz



위에서 tar cvfz 라는 옵션을 사용해서 tar로 묶고 다시 gunzip 으로 압축을 한것이 TEST.tar.gz 파일이다.

파일 크기를 비교해보면 tar.gz 파일이 훨씬 작다는 것을 알 수 있다.


### 이미 존재하는 tar 파일에 추가로 파일을 넣기 
tar uvf test.tar ./A

test.tar 라는 파일에 추가로 A 라는 파일을 넣는 옵션은 -u  즉 update 옵션이다.



※ 유닉스에서 사용되는 tar.Z 파일 형식

아래는 유닉스에서 사용되는 압축으로 확장자 명은 tar.Z 파일이다.
이것은 tar 로 묶은뒤에 compress 라는 유틸을 사용해서 압축을 한 파일이다.
이것을 푸는 것은 유닉스에서 uncompress 라는 명령어로 풀수있다.

compress TEST.tar.Z TEST.tar


 
2009. 9. 10. 12:10

9. 여러 파일 하나의 txt 파일로 합치기 스크립트

#!/bin/bash
DIR="/user1/si/z_bjh/icms_data/"

A=`ls -l $DIR | awk '{print $9}'`

for i in `echo $A`
do
cat $DIR$i >> /user1/si/z_bjh/aa.txt
done

#echo "===== DONE !! ======="


먼저 하나로 합칠 여러개의 파일들을 하나의 디렉토리에 넣는다

/user1/si/z_bjh/icms_data  에 모두 넣고

변수 A 에   ls -l $DIR | awk '{print $9}'  명령을 통해서 파일명만 추출해서 넣음

 for 반복문으로
변수 i 에다가 변수A 가 계속적으로 반복되면서 하나씩 차례로 파일명을 넣을 것이고

cat $DIR$i >> /user1/si/z_bjh/aa.txt

aa.txt 라는 파일에 리다이렉트로  모든 파일의 내용을 계속적으로 넣는다.


------------

가장 쉬운 방법은 a.txt 와 b.txt 라는 두 개의 파일 있을 때

다음과 같이 리다이렉트를 사용해서 두개를 하나의 파일로 합치면 됩니다.

cat a.txt >> imsy.txt
cat b.txt >> imsy.txt

그런 다음에 중복된 것을 제거 하기 위해서 sort -u imsy.txt > imsy2.txt 라고 하면

마지막에 imsy2.txt 라는 파일 최종적으로 나오게 된다 ^^

참고로 필드별로 sort 하는 방법은 이전 글에 적어놓았음 --> [내가쓰는리눅스 강좌] - 25. sort 명령어




2009. 9. 10. 11:10

8. 파일 내용 비교1


mdn 이란 변수에 전화번호 9천개가 들어있는 파일로 cat 으로 일일이 하나씩 불러오게 함

#!/bin/bash
dir=/user1/si/z_bjh
for mdn in `cat /user1/si/z_bjh/icms_err`
do
sed -n "/"$mdn"/p" $dir/b.txt >> $dir/c.txt
done

그런다음에 b.txt 에 있는 내용중에서  mdn 변수에 있는 전화번호가 있는 라인만 sed 로 뽑아서 c.txt 에 저장하는 것


참고로 필요한 mdn 번호만 정리하기 위해서 cut -c 옵션으로 문자열의 수만 따로 뽑음
물론 awk 를 사용할 수도 있지만 구분필드가 명확하지 않아서 ㅡㅡㅋ

cut -c 21-31 c.txt >> d.txt

21번째 문자부터 31번째 문자까지만 뽑아서 d.txt 에 저장




최종 파일 비교 스크립트 -> http://darkrang.tistory.com/219




2009. 8. 13. 10:31

[노을의시집] 10. 낮은 계단으로

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 8. 13. 10:24

[노을의시집] 9. 기다림

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 8. 13. 10:22

[노을의시집] 8. 그대 한번의 웃음이.......

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 8. 13. 10:21

[노을의시집] 7. 새로움.......

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 8. 13. 10:20

[노을의시집] 6. 그대가 나에게 ...

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 8. 12. 08:42

[노을의시집] 5. 소중한 것은 ...

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 8. 12. 08:42

[노을의시집] 4. 조지윈스턴

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 8. 12. 08:40

[노을의시집] 3. 천년의 사랑이 아니어도 ...

보호되어 있는 글입니다.
내용을 보시려면 비밀번호를 입력하세요.
2009. 7. 29. 03:18

[노을의시집] 2. 전 지금까지


전 지금까지
제 마음속의「나」를 발견하고 키우러 애써왔습니다
하지만 만약 . . .
내 마음속에 있는 「나」가 없어진다면
그 땐 과연 누가 남아있을까? 하고
한 번 생각해 보았습니다.
그러면 그 땐
바로 당신이 남아있었습니다.
제가 찾으려 했던 것은
「나」자신이 아니라
바로 당신이 아닐지도 모릅니다

전 지금까지 당신에 대한 확신을 기지고서야
당신에게 말하려 이제껏 준비해 왔습니다.
하지만 만약 . .
확신을 가졌을 때는
이미 늦을런지도 모른다는 생각을 했습니다.
그래서 지금 저는
당신에게 「사랑한다」라는 말을 하기 위해 달려가고
있습니다.
또 다시 제 마음을 잃어버리긴 싫으니까요.