Drunken Lion

유닉스 관련 명령어 본문

SAP/ABAP

유닉스 관련 명령어

DrkLion 2007. 9. 13. 16:02
1. ABAP 에서 유닉스 명령어 실행하기

DATA: BEGIN OF work1 OCCURS 100 ,
      line(100).
DATA: END OF work1.
DATA: u_command(100).

CALL 'SYSTEM' ID 'COMMAND' FIELD  u_command
                        ID 'TAB'     FIELD  work1-*sys* .

Loop at work1.
  WRITE work1-line.
EndLoop.

 Call 'system' 을 수행하면 command를 수행하고, 그 결과를 tab에 저장한다.
 Internal table에 저장된 데이터를 다양하게 활욜 가능하다.

2. 유닉스에 파일 생성하기

OPEN DATASET lv_filename FOR OUTPUT IN TEXT MODE.
LOOP AT i_tab.
  TRANSFER i_tab   TO lv_filename.
ENDLOOP.
CLOSE DATASET lv_filename.

Open dataset 으로 파일을 생성하고, Transfer 로 파일 내용을 전송하고
Close Dataset 으로 파일을 닫아주게 된다.
이때, Lv_filename 은 유닉스서버의 디렉토리명을 포함한 경로, 파일명을 넣어야 한다.

3. 유닉스 파일을 internal table로 담기

OPEN DATASET unixfile FOR INPUT IN TEXT MODE.
DO.
  CLEAR in_rec.
  READ DATASET   unixfile  INTO      in_rec.
  APPEND in_rec.
  IF sy-subrc NE 0.
    EXIT.
  ENDIF.
ENDDO.

File을 오픈한 뒤에 READ DATASET 명령을 사용해 한 라인씩
in_rec 라는 Internal Table에 저장 할수 있다.

4. 파일변경 권한 체크하기

CALL FUNCTION 'AUTHORITY_CHECK_DATASET'
        EXPORT
*           PROGRAM =
           ACTIVITY = 'WRITE'
           FILENAME = PATH     .