2014-10-30 5 views
0

도서관 용 앱 (학교용)을 제작 중입니다.Bash를 사용하여 기존 파일에 입력 추가

사용자 입력을 수집하고 기존 파일에 쓸 수 있어야합니다 (새 레코드 추가). 여기

./minilib.sh: line 12: : No such file or directory 

새 레코드

records = "/lib_records.txt" 

add_book(){ 
    echo 
    echo "Enter Book Name:" 
    read name 
    echo "Enter Book Author:" 
    read author_name 
    echo "$name $author_name" >> "$records" #this is my line 12 
} 

오류를 일으킬 수있는 어떤 생각을 추가 내 기능은 다음과 같습니다 내가 그렇게하려고 할 때, 나는 다음과 같은 오류가 발생합니다? 어떤 도움이라도 대단히 감사합니다. 다음은 파일 사용 권한은 다음과 같습니다

-rwxrwxrwx. 1 GSUAD\ GSUAD\domain^users 0 Oct 30 18:04 lib_records.txt 
-rwxrwxrwx. 1 GSUAD\ GSUAD\domain^users 1253 Oct 30 18:40 minilib.sh 
+2

루트 파일 시스템 ('/')에 파일을 추가하려고합니다. 이 작업을 수행 할 수있는 권한이 매우 희박합니다. –

답변

2

여기 쉘 스크립트에 대한이 문제입니다.

records="./lib_records.txt" 

add_book(){ 
    echo 
    echo "Enter Book Name:" 
    read name 
    echo "Enter Book Author:" 
    read author_name 
    echo "$name $author_name" >> "$records" #this is my line 12 
} 

add_book 
+0

굉장합니다. 고맙습니다!!!! – user3521205

1

당신은 아마 권한이 거부 ​​오류 얻을 것이기 때문에 당신은, / 디렉토리 (/lib_records.txt)에 파일을 저장해서는 안된다. 둘째, 첫 번째 줄의 공백을 제거하십시오.

  1. records="./lib_records.txt" : 전 =
  2. "./lib_records.txt" 대신 여기

"/lib_records.txt" 당신을 위해 스크립트를 수정 한 후 공간이 있어야

관련 문제