📖
Simple & Clear Engineer Note
  • This is me
  • Infra 용어
  • Linux Acceptance test
    • ISO 9126의 특성에 따른 OS 항목 분류
    • 기능성 (Functionality)
      • Kernel 영역
      • LVM (Logical Volume Manager)
      • API (daemon 서비스 상태 체크)
      • CPU 정보 및 Firmware 확인
      • Memory 용량 및 Slot 확인
      • Negotiation 상태 확인
      • Raid 구성 확인
      • WEB/WAS 설치
      • Cache/Swap 메모리 초기화
      • NFS (Network File System)
    • 신뢰성 (Reliability)
      • Bonding
      • System Reboot
      • Disk Mirror
      • Multipath
      • Cluster
      • Backup & Optical Drive check
      • kdump
      • watchdogtimer
    • 사용성 (Usability)
      • Locale
      • Network 구성
      • Hosts file
      • DNS(Domain Name System)
      • NTP(Network Time Protocol) 시간 동기화
      • tcpdump
      • SSH (Secure Shell)
      • Runlevel
      • Crontab 작업 예약
      • TimeZone
      • VNC(Virtual Network Computing)
      • Yum local repository
    • 유지보수성 (Maintenance)
      • hdparm
    • 보안성 (Security)
      • Permission error 해결방법
    • 기타(ETC)
      • X window
      • Macro (Shell Script & TeraTerm(TTL))
  • Webserver
    • Infra Structure 소개
      • HTML +CSS +JavaScript
      • MongoDB + Flask
  • Hadoop Guide
    • Hadoop Single설치 (ver 2.7.4)
  • MachineLearning
    • 확률(Probability)
    • Machine learning이해하기
    • Processing Data(Numpy)
    • Data Handling - Pandas
      • feature Scaling
      • Data encoding
    • Analysis(with Python & R)
      • 기초통계지식
      • 회귀(Regression)
      • 분류(Classification)
      • 차원축소(Dimension Reduction)
      • 군집화(Clustering)
      • 평가(Evaluation)
      • Scikitlearn
    • Text Analysis
    • Time Series Analysis
    • Statistics
    • Customer Value Analysis
  • Deep Learning
    • CS231n
      • CS231n (Lecture 1~6)
      • CS231n(Lecture7~12)
  • DataBase
    • DataBase
    • Transaction
    • Oracle 12C setup
    • MySQL setup
    • neo4j Enterprise Setup
    • SQL
    • Data inquiry and data analysis using SQL
    • 품질 & RiskManagement
    • 성능(Performance)
    • 안정성
    • 이기종간 데이터 이관방법
  • 기타
    • JAVA용어정리(암기)
  • Windows 관리
    • WINDOW 서버 root 권한 설정 방법
    • 접속자 확인
  • EMRproject
    • Git & Github
Powered by GitBook
On this page
  • Shell Script
  • Shell Script 개념 및 사용 목적
  • Script 자주 쓰는 명령어 : grep, awk, sed
  • Script 기초 구성
  • TeraTerm(TTL)
  • TeraTerm 매크로 사용 목적
  • 매크로 실행 방법
  • TTL 코드 리뷰
  • Script Example
  • Script 실행 방법
  • Reference

Was this helpful?

  1. Linux Acceptance test
  2. 기타(ETC)

Macro (Shell Script & TeraTerm(TTL))

셸 스크립트와 테라텀 매크로로 자동화 방법 소개 (Introduction to Automation Methods with Shell Script & TeraTerm Macro)

PreviousX windowNextInfra Structure 소개

Last updated 4 years ago

Was this helpful?

Shell Script

Shell Script 개념 및 사용 목적

셸 스크립트(Shell Script)는 동일한 작업의 반복을 줄이기 위해 리눅스 운영체제에 쓰이는 스크립트로 보통 배치파일이라 부르기도 한다. Linux 운영체제에서는 스크립트 종류로는 bash/csh/ksh 등 있다.

Script 자주 쓰는 명령어 : grep, awk, sed

(OS에서 스스로 실습을 해보시길 바랍니다.)

1. grep 설명 :

입력으로 전달된 내용에서 특정 문자열을 찾고자 할 때 사용하는 명령어

  • grep "test" : "test" 문자열이 포함한 행들을 전부 출력 예) rpm -qa | grep "vnc"

  • grep -v "test" : "test" 문자열을 있는 행을 제외한 나머지 내용 출력 예) rpm -qa | grep "vnc" | grep -v "tiger"

2. awk 설명 :

텍스트를 처리를 위해 사용하는 명령어로, 텍스트 형태로 되어있는 데이터를 필드로 구분하여 출력한다.

  • awk "NR>=5" : 5번째 줄부터 결과 출력 예) rpm -qa | awk "NR>=5"

  • awk "/test/" : "test"라는 단어가 포함한 행들을 전부 출 (grep "test"와 같음) 예) free -m | awk "/Mem:/"

  • awk '{print $3}' : 3번 칼럼만 출력 예) df -h | awk '{print $3}'

  • awk '{print $NF}' : 마지막 칼럼만 출력 예) df -h | awk '{print $NF}'

3. sed 설명 :

  • sed "s/test/done/g" : "test"단어를 "done"으로 변 예) df -h | sed "s/%//g"

Script 기초 구성

1. Shell Script 빈 파일 생성 (파일 이름 끝에 .sh를 입력) # vi sample.sh

2. vi에디터로 Shell Script 파일 작성

3. Shell Script 실행 가능하도록 권한 변경 # chmod 777 sample.sh

4. Shell Script 실행 # ./sample.sh

TeraTerm(TTL)

TeraTerm 매크로 사용 목적

매크로 실행 방법

TeraTerm 실행창에서 [제어] -> [매크로]를 클릭 후 ttl파일 실행

TTL 코드 리뷰

1. 서버 접속 및 로그인

1-1. telnet 접속

connect '1.1.1.1:23 /telnet' // telnet으로 IP 1.1.1.1로 서버 접속 wait 'login' // "login"이라는 단어가 나올 때까지 기다린다. sendln 'sample' // 서버 계정 ID 입력 wait 'Password' // "Password"이라는 단어가 나올 때까지 기다린다. sendln 'samplepw' // 서버 계정 PW 입력

1-2. ssh 접속

connect '1.1.1.1:22 /ssh /auth=password /user=sample /passwd=samplepw' // ssh로 IP 1.1.1.1로 서버 접속 // auth=password --> 인증 방식을 계정 로그인으로 선택 // user=sample --> 서버 계정 ID 입력 // passwd=samplepw --> 서버 계정 PW 입력

2. 로그 시작

logopen 'sample.log' 0 0 // 'sample.log'로 파일 이름 정한 후 로깅 시작 pause 1 // 1초간 대기

3. Shell Script 실행

sendln 'cd /home/sample/' // 'cd /home/ONS/checklist/' 명령어 입력 wait 'sample' // 'ONS'이라는 단어가 나올 때까지 기다린다. sendln './sample.sh' // './ONS_TB_checklist_sample.sh' 명령어 입력 pause 4 // 4초간 대기

4. 로그 및 TeraTerm 종료

logclose // 로그 종료 closett // TeraTerm 종료

Script Example

스크립트 예제파일을 드립니다. 이 예제파일은 Linux ETC의 환경구성요소들을 백업용도로 사용하기 위해 만들었습니다. 예제스크립트를 열어보시면 자세하게 주석을 달아 이해하시기 쉽도록 설명했고, 이 예제파일로 Script 실행방법의 순서대로 실습해보시길 바랍니다.

Script 실행 방법

  • sample.sh 대신 위에 BackupScript_by_yun 파일을 다운로드 하신 후, 실습해보십시오.

2. Script 파일 넣을 디렉토리 생성 # mkdir -p /home/sample

3. Script 파일 경로 이동 # cd /home/sample # mv ./sample.sh /home/sample

4. 파일 소유자 권한 변경 # chown [소유권자]:[그룹식별자] /home/sample

5. 파일 실행할 수 있도록 권한 변경 # chmod 777 /home/sample/sample.sh

6. Shell Script 실행 # ./home/sample/sample.sh

Reference

stream editor의 약자로, 텍스트를 구문 분석하고 변환하기 위해 사용한다.

TeraTerm는 오픈 소스 무료 터미널 프로그램으로, 이에 존재하는 Macro는 반복 test를 아주 간편하게 사용하기 위해 자동 로그인 및 자동 로그 오픈 등 다양한 기능을 제공한다.

1. 로 만들어 놓은 Shell Script를 서버로 전송

[1]
[2]
[3]
[4]
[5]
FileZilla
[1] Shell script : From Wikipedia, the free encyclopedia
[2] 리눅스 grep 사용법 made by 어쩐지 오늘은
[3] awk : From Wikipedia, the free encyclopedia
[4] sed : From Wikipedia, the free encyclopedia
[5] Tera Term : From Wikipedia, the free encyclopedia
2KB
backup.sh
BackupScript_by_yun
TeraTerm 실행창에서 [제어] -> [매크로] 캡쳐
sample.ttl 코드