인프런 커뮤니티 질문&답변

우하하님의 프로필 이미지
우하하

작성한 질문수

리눅스 쉘 스크립트 마스터

파라미터 대체와 인용부호

book이 변수가 아니라 파일인가요?

작성

·

284

1

안녕하세요 쉘스크립트 강의 잘 듣고있습니다!

궁금한점이 있는데요, book="The old man and the sea.mp3"가 파일을 생성한건가요? 뒤에있는 내용보면 변수를 생성한 것 같은데, 파일이라 하셔서요. 

그리고 똑같이 따라했지만 저는 ls 조회시 "The old man and the sea.mp3"라는 이름의 파일이 존재하지 않고, 파일이 없으니 삭제되지도 않습니다.

선생님과 제 결과가 다른 이유가 무엇일까요?

답변 1

0

홍영기님의 프로필 이미지
홍영기
지식공유자

우하하님! 반갑습니다:)

제가 올린 자료 파일에 문제가 있었습니다. 죄송하구요.

다시 다운로드 받아서 해보셨으면 합니다.

문의하신 실습 파일의 정확한 경로는 ~/Desktop/shell_cmd/mydir 입니다.

해보시고 이상한 점 있으면 다시 말씀해주세요~~

 

 

 

저도 이게 같은 질문입니다. 다시 다운로드 했는데도 결과는 같구요. 원리를 설명해주세요. 어떤 파일에 어떤 문제가 있어서 그랬던 것 인지 그리고 만든 것은 파일이 아니라 특수한 변수에 저장하는 것인데 어떻게 해서 저게 파일 삭제가 일어난 것인지 궁금합니다.

홍영기님의 프로필 이미지
홍영기
지식공유자

안녕하세요. GT38님!

변수는 문자열을 보관할 수 있는 저장소입니다. 저장해두었던 문자열을 접근할 때 달러사인($) 을 붙여서 사용합니다. 그 뿐입니다.

따라서, 아래 움짤에서 보실 수 있는 것처럼

rm "The old man and the sea.mp3" 와 rm "$book" 은 완전히 동일합니다.

다만, 변수 사용할 때는 인용부호를 사용해주는 것이 문자열내에 공백문자가 포함되어 있을 때를 대비할 수 있어서 좋습니다 ^^

image

우하하님의 프로필 이미지
우하하

작성한 질문수

질문하기