728x90
반응형

echo 3

Syntax error: "(" unexpected

목차 chsh 명령어 기본쉘 확인 sh script.sh sh 명령어로 쉘스크립트를 실행했는데 Syntax error: "(" unexpected가 발생하는 경우가 있다. 이는 script.sh 첫 번째 줄에 #!/bin/bash를 적지 않아서 발생하는 에러이다. 이를 shebang이라고 한다. 하지만 shebang을 명시해도 동일한 에러가 발생하는 경우 아래 명령어를 실행해보자. ls -l /bin/sh /bin/sh가 dash를 바라보는 경우 sh 명령을 실행할 때 bash가 아닌 dash가 실행되서 그렇다. 참고로 Ubuntu는 기본 쉘이 dash라고 한다. chsh 명령어 sudo chsh -s /usr/bin/bash 위 명령어를 통해 기본쉘을 변경할 수 있다. 기본쉘 확인 echo $SHELL..

IT/개발 2023.08.20

[NM7] grep과 awk를 이용한 nonmem의 xml 파일에서 결과값 추출하기

NONMEM 7 부터는 결과값을 xml 파일로 저장해준다. 이를 활용하면 objective function value, elapsed time 등의 수치를 쉽게 추출할 수 있다. Linux bash, grep, awk 등에 대해서는 http://bahndal.egloos.com/category/%EB%A6%AC%EB%88%85%EC%8A%A4%20bash%20script 사이트에 잘 정리되어 있다. 먼저 결과 파일명이 FO.xml 인 경우, grep을 이용해서 total_cputime 값을 추출해보자. $ grep 'nm:total_cputime' FO.xml 0.124 grep을 이용하면 해당 검색어가 있는 줄을 통째로 추출해줌을 알 수 있다. 여기에 awk를 이용해서 결과값만 뽑아내보자. $ grep..

IT/개발 2023.08.17

대상 서버의 포트가 열려 있는지 확인하는 3가지 방법

ACL이나 보안 그룹(security group)으로 포트가 막혀 있는지 확인하고 싶을 때가 많습니다. 보통은 ping 같은 명령어로 ICMP 패킷을 쏴보고 해당 서버가 살아있는지 먼저 확인합니다. 그러나 ping으로는 살아 있는데, ssh 나 http 같은 건 안 될 때가 있죠. 이 때는 TCP 포트가 열려 있는 상태를 봐야 합니다. 1. tcpping TCP SYN 패킷을 보내서 해당 포트가 열려 있는지 확인해주는 간단한 프로그램입니다. 이런 종류의 프로그램에 보통 이런 이름으로 불러주는 듯합니다. 그런데 CentOS나 Ubuntu에 해당 이름으로 패키지는 올라와 있지 않습니다. github에서 찾아보면 누가 원조인지 모르겠는 여러 버전의 tcpping이 올라가 있습니다. --- 번거로워서 결국 안 ..

728x90
반응형