2011-10-10 4 views
2

나는 bash는 스크립트를 작성하고, 나는 내 bash는 아래 링크를 썼다 Bash에서 변수를 문자열과 연결하는 방법은 무엇입니까?

list=`/home/ea/students' 

아래처럼 내 bash는 파일에 한 변수를 사용하지만

cat $list /admin.txt 

이 어떻게 내가 할 수있는 알고 계십니까 오류가있어 변수와 문자열을 함께 연결 하시겠습니까?

+0

, 당신은 당신의 목록 정의에 두 개의 서로 다른 스타일의 따옴표를 사용하고 , 이는 매우 다른 것들을 의미하는 경향이 있습니다. –

+1

나중에 참조 할 수 있도록 게시물의 오류 메시지를 포함하여 "오류가 있습니다"보다 도움을 요청하는 사용자에게 유용합니다. – Johnsyweb

답변

4

은 첫째로 당신이 변수에 문자열을 추가하려면 작은 따옴표 (''') 문자열 주위되지 역 따옴표 ('' ')

list='/home/ea/students' 

를 사용할 필요가

list=${list}/admin.txt 

데모 :

다음을 수행 당신이 중 하나와 함께 갈 수
echo $list 
/home/ea/students/admin.txt 
+1

고맙습니다. –

2

이 시도 :

list='/home/ea/students' 
... 
cat "${list}/admin.txt" 
+0

고맙습니다. –

1

:은 /는 유효한 식별자 이름 문자가 아닌 것처럼 중괄호 '{}'이 경우

cat "$list/admin.txt" 

는 필수되지 않습니다. 당신이 변수를 필요로하는 경우

... 또는, 최근 배쉬 버전 을 추가 더 간결한 방법을 제공합니다 :

우선 들어
bash-4.1$ list=/home/ea/students 
bash-4.1$ list+=/admin.txt 
bash-4.1$ printf '%s\n' "$list" 
/home/ea/students/admin.txt 
관련 문제