IntelliJ IDEA 리뷰

^M문자 없애기

^M문자없애기

      vi로 문서를 보다 보면 줄끝마다 ^M 이 보이는 경우가 있습니다.
      이는 윈도우시리즈(도스포함)에서 작성된 문서를 유닉스로 볼때 생기는 현상 입니다.

      이런 현상이 왜 생기는 이유는 윈도우와 유닉스에서의 ASCII화일 형식이 서로 다릅니다.

      일단 윈도우에서는 엔터시에 한줄을 내리고 커서를 앞으로 보내주지만 즉,엔터 한번으로
      두 명령이 입력되는거죠..

      하지만 유닉스에서는 엔터치면 단지 줄만 바뀌죠..즉 한번의 엔터는 단지 한번의 명령일 뿐 입니다..^^;

      그래서 도스파티션에 있는 화일을 그냥 카피하면 ^M자들이 지저분하게 보이죠..

      반대로 유닉스용 화일을 도스로 카피해서 도스용 에디터로 보면 전부 한줄로 붙어서 나타나게 된답니다.

      아래는 몇가지 방법입니다.

      1. vi 에디터를 이용해서 ^M 문자 없애는 방법

             1) tr 을 이용합니다.
                vi 에디터에서 다음과 같이 입력합니다. 여기서 1G는 첫라인으로 간다는
                뜻이고, 느낌표부터는 쉘명령 tr을 이용한다는 겁니다.

                1G!Gtr -d ^M

             2) ed 명령을 사용합니다.
                vi 에디터에서 다음과 같이 입력합니다. 여기서 : 는 아시다시피
                명령모드로 가는 거구, 1은 첫라인을 $는 마지막 라인을 의미합니다.
                그러므로 여기서 1,$ 는 첫라인부터 마지막라인까지라는 뜻이겠죠?
                s는 substitute의 약자로써 다음의 /피대체어/대체어/ 에서
                피대체어를 대체어로 바꾼다는 것입니다. 여기서는 ^M을 없애라는
                뜻이겠죠? 마지막의 g는 global의 약자로 각 라인에서 해당문자열이
                나올때마다 몽땅 바꾸라는 의미.

                :1,$s/^M//g


      2. perl 을 이용하는 방법

             perl -pi -e 's/\r//' inputfile


      3. sed 를 이용하는 방법

             1 번 vi 에디터를 이용하는 방법에서 언급 되었습니다. 커맨드라인상에서
             바로 수정하는 방법.

             sed 's/^M//g' inputfile > outputfile


      4. awk 를 이용하는 방법

             print $0 는 문서전체를 의미합니다.

             awk '{print $0,"\r"}' inputfile > outputfile


      5. tr 을 이용하는 방법

             1 번 vi 에디터를 이용하는 방법에서도 언급되었지만 에디터를 부르지
             않고 커맨드라인상에서 바로 고치는 방법입니다. -d 옵션은 delete를 의미.

             tr -d '\015' < inputfile > outputfile


      6. mcopy 이용시 옵션을 주는 방법

             -t 옵션을 이용하면 mcopy로 복사할때 ^M 문자가 없어지고 copy됩니다.
         
             mcopy -t a:/test.cap .

      7. fromdos 명령을 이용하는 방법

             간단히 리눅스에 포함되어있는 유틸리티를 이용하는 방법입니다. fromdos는
             도스용 문서를 리눅스(유닉스)용으로, todos는 리눅스에서 도스용으로 변환
             할때 사용할 수 있습니다.

             fromdos inputfile

            
      참고 : ^M 의 입력은 [Ctrl+V][Ctrl+M] 입니다.


      또다른 방법하나.

      //g$s/
      요렇게 하면 몽땅 지워집니다.
      1 은 첫라인부터
      $ 은 마지막라인까지
      s 는 다음과 같이 바꾸는데...
      ^M 은 입력할때 Ctrl+V M 요렇게 해야허구...
      // 는 원래 요사이에 뭔 string이 들어가야하지만
        없애야하기에 암껏두 안썼음.
      g 는 문서전체에 걸쳐 몽땅...

      이게 귀찮으시면 그냥 fromdos 명령 사용하세요~


      저는 보통 vi 편집기 명령모드에서 :1,$s/^M//g 이걸로 ^M을 없애고 있습니다..


'system > unix' 카테고리의 다른 글

su 명령 사용 허가하기  (0) 2008.09.17
bash 환경 설정  (0) 2008.09.17
Unix Shell 종류  (0) 2008.09.17
시스템에서 사용하는 port 1024 개  (0) 2007.11.09
[HP-UX] 시스템 명령어  (0) 2007.10.31

[HP-UX] 시스템 명령어

HP-UX

CPU 관련

CPU 정보 확인
  • glance (화면출력 후 a)

    CPU  State     Util   LoadAvg(1/5/15 min)   CSwitch   Last Pid

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

    0 Unknown 1.5 0.6/ 0.6/ 0.7 742 1008

    1 Unknown 2.3 1.0/ 1.0/ 1.1 708 21042

  • model (Hz 표시)

    정확한 결과는 아니다. 하지만 root의 권한이 필요하지 않다는 장점이 있다.

    끝에 44로 표시된 부분이 440 MHz를 말한다.

    % model     

    9000/800/L1000-44

  • sam (root)

    % sam -> performance monitor -> system properties -> 

    이동(tab), 선택(space bar)

    Processors:

    Active: 2

    Total: 2

    CPU Version: 2.0 PA8500

    Clock Frequency: 440 MHz

    Machine Identification: 527706557

    Hardware Model: 9000/800/L1000-44

    Kernel Width Support: 64

CPU 사용량 확인
  • glance

  • top

메모리 관련

메모리 정보 확인
  • sam (root)

    % sam -> performance monitor -> system properties -> 

    이동(tab), 선택(space bar)



    Physical Memory: 2049.8 MB

    Real Memory:

    Active: 274282.9 KB

    Total: 586006.5 KB

    Virtual Memory:

    Active: 431045.1 KB

    Total: 815797.4 KB

    Free Memory Pages: 263434 at 4 KB/page

    Swap Space:

    Avail: 4096 MB

    Used: 745 MB

  • dmesg

    여러 정보가 출력 후 맨 아래에 결과 표시

    Memory Information:

    physical page size = 4096 bytes, logical page size = 4096 bytes

    physical: 2097152 Kbytes, lockable: 1562592 Kbytes,

    available: 1800988 Kbytes

프로세스 메모리 확인
  • ps -elf

    % ps -elf | grep altibase

    401 R qa32 21042 1 0 152 20 4e73d340 40727 - 08:04:18 ? 14:37 /user5/qa32/ altibase -a boot

  • glance (root)

시스템 메모리 확인
  • glance (root)

    Usage: vmstat [-cisS] [disk ...] [interval [count]]

    %vmstat 1 1

    procs memory page disk faults cpu

    r b w swap free re mf pi po fr de sr s6 sd sd sd in sy cs us sy id

    0 0 0 44048 2936 3 959 44 34 43 0 1 0 2 2 1 867 6994 3662 18 9 72

시스템 관련

LOG 확인
  • syslog

    % vi /var/adm/syslog/syslog.log      (새로운 로그파일)

    % vi /var/adm/syslog/OLDsyslog.log (이전 로그파일)




운영 체제 버전 확인
  • uname

    % uname -a

    HP-UX hp B.11.11 U 9000/800 527706557 unlimited-user license

패치 번호 확인
  • swlist

    % swlist -l product | grep libc

    PHCO_24400 1.0 libc cumulative patch

    PHCO_24402 1.0 libc cumulative header file patch

디스크 관련

디스크 I/O 정보
  • iostat

    %iostat 3 1



    device bps sps msps

    c2t0d0 0 0.0 1.0

    c1t0d0 0 0.0 1.0


'system > unix' 카테고리의 다른 글

su 명령 사용 허가하기  (0) 2008.09.17
bash 환경 설정  (0) 2008.09.17
Unix Shell 종류  (0) 2008.09.17
시스템에서 사용하는 port 1024 개  (0) 2007.11.09
^M문자 없애기  (2) 2007.11.02