콘솔에서 모든 텍스트를 LINE에 알릴 수있는 자체 제작 명령 준비

3123 단어 BashLineNotifyapi

소개



데이터 분석이나 기계 학습 등으로 장시간의 처리를 콘솔상에서 실행할 때, 처리의 도중 경과나 종료를 LINE 로 통지받을 수 있으면 편리하네요. 그래서 인수로 지정한 텍스트를 LINE 으로 통지해 주는 커멘드를 자작해 사용해 보고 있습니다.

했던 일



LINE Notify알림 APIcurl 로 두드리는 쉘 스크립트에 실행 권한을 붙여 명령화했습니다.

LINE Notify 설정



작업은 다음과 같습니다.
  • LINE 에서 통지하고 싶은 그룹을 만든다.
  • 만든 그룹에 "LINE Notify"를 초대한다(멤버로서 추가한다).

  • Line Notify 내 페이지 에서 액세스 토큰을 발행한다.
  • 이 때, 통지의 송신처에는, 만들어 둔 그룹을 지정합니다.
  • 발행된 액세스 토큰은 쉘 스크립트에서 사용됩니다.
  • 액세스 토큰은 중요한 보안 공지입니다. 자신 이외에는 알려지지 않도록 관리합시다.


  • 쉘 스크립트 준비



    인수(텍스트)를 LINE Notify 의 통지 API 를 사용해 통지하는 쉘 스크립트 (파일명을 예를 들어 line_notify 로 해 둡니다)는, 이하와 같은 느낌이 됩니다.

    line_notify
    #!/bin/bash
    
    API_URL=https://notify-api.line.me/api/notify
    API_TOKEN=<発行したトークン>
    
    if [ $# -ne 1 ]; then
      exit 1
    fi
    
    curl -X POST -H "Authorization: Bearer $API_TOKEN" -F "message=$1" $API_URL
    echo
    

    명령화



    만든 쉘 스크립트 line_notify에 실행 권한을 부여합니다. 물론, 미리 패스를 통해서 둔 장소에 두어도 사용하기 쉽다고 생각합니다.
    $ chmod 700 line_notify
    

    사용법



    통지하고 싶은 텍스트를 인수로 해, line_notify 를 실행해 봅시다.
    $ line_notify '処理が完了しました!'
    

    콘솔에 다음이 표시되면 성공하고 LINE에 텍스트를 알립니다.
    {"status":200,"message":"ok"}
    



    결론



    시간이 걸리는 처리의 도중이나 마지막에 line_notify

    참고


  • 명령줄에서 LINE으로 메시지를 보낼 수 있음 LINE Notify - LINE ENGINEERING
  • bash 쉘 스크립트로 LINE 알림 함수를 만들었습니다.
  • 콘솔에서 처리 종료 알림을 slack에 게시 - Qiita
  • 좋은 웹페이지 즐겨찾기