스크립트 문법상 문제라든지 쉘프로트에서 root 권한으로 수동으로 실행했는데도
Syntax error : Bad for loop variable 에러가 발생하는 경우가 있다.
이경우는 sh 쉘로 실행해서 발생하는 경우로 bash로 실행해줘야한다.
스크립트에
!#/bin/bash를 넣어줘야 한다
#!/bin/bash
for ((cnt=1; cnt<=30; cnt++)); do
echo $cnt
done
쉘스크립트에서는 명시를 해야하고 쉘프로프트에서는 명시를 안해도 제대로 실행되는 경우는?
쉘프롬프트 기본 쉘이 bash 이기 때문이다
현재 해당 서버의 기본 쉘이 무엇인지 확인하려면 아래 명령어를 사용하면 확인할 수 있다.
echo $0
반응형
'프로그래밍 > shellscript' 카테고리의 다른 글
[SHELLSCRIPT] 쉘스크립트 리눅스 계정 패스워드 만료기한 남은일수 조회 (0) | 2023.12.06 |
---|---|
[shellscript] 쉘스크립트 sed 문자 정확히 일치 할 때 바꾸기 (0) | 2023.11.03 |
[shellscript] grep -r 하위 폴더 포함 파일 내용 검색하기 (0) | 2023.10.24 |
[shellscript] awk v옵션 문자를 찾고 같은 행 특정 열 치환하기 (0) | 2023.04.18 |
[powershell] 파워쉘 윈도우 계정 패스워드 변경 (0) | 2022.07.26 |
댓글