인자로 전달되는 특정 수의 파일을 작성하고 해당 파일을 관련 정보로 채우는 bash 스크립트를 작성하려고합니다. 그러나 웬일인지 제대로 작동하지 못하고 인터넷 검색이 아무 것도 나타나지 않았습니다. 파일 이름 :Bash 스크립트 파일 작성 및 채우기
는 나는 다음과 같이 파일을 생성 할
Prob_3_ch_17.cpp
는 다음과 같은 가득 :
첫 번째 명령 행 인수는 장 번호입니다
/*
User: Johnny Smith
Prob: 3
Output:
*/
. 두 번째는 시작 번호이고 세 번째는 끝 번호입니다. 다음은
sh ../FileMaker.sh 17 1 10
를 실행하므로 경우이 내가 해낸 스크립트 제 17 장 10 개 파일, 적절한 데이터 및 적절한 파일 이름으로 가득 각을 만들 것입니다.
#!/bin/bash
# Syntax:
# $1 = Chapter Number
# $2 = Starting Number
# $3 = Ending Number
CHAPTER=$1
FIRST=$2
LAST=$3
U_NAME="Johnny Smith"
# Name: Prob_$NUMBER_Ch_$1.cpp
for ((NUMBER=$FIRST; $NUMBER<=$LAST; $NUMBER++));
do
if [ -e "Prob_$NUMBER_Ch_$CHAPTER.cpp" ]; then
echo "File Prob_$NUMBER_Ch_$CHAPTER.cpp already exists!"
else
echo "/* \n User: $U_NAME \n Problem: $NUMBER \n Output: \n */" >> "Prob_$NUMBER_Ch_$CHAPTER.cpp"
done
그러나 실행되지 않습니다. 나는 다음과 같은 오류 얻을 :
../FileMaker.sh: line 21: syntax error near unexpected token `done'
../FileMaker.sh: line 21: `done'
내가 봤 다른 사람이 같은 문제가 있었 발견했습니다,하지만 나는 완전히 용액에 의미가 있었는지 이해하지 못했다. 누군가 나를 도울 수 있습니까? 나는 쉘 스크립팅에서 최고가 아니며, 이와 같은 스크립트를 작성하여 배우려고합니다.
고맙습니다.
보다 단순한 질문을하거나 문제를 해결하기 위해 스크립트를 단순화하려고 할 수 있습니다. – danfuzz