2012-12-05 3 views
1

하드 드라이브의 파티션을 자동화하는 스크립트를 만들고 있습니다.특정 문자가있는 경우 bash

지금 나는 다음과 같은 물건에 문제가 있어요 :

나는 경우 확인 필요 "." 텍스트 파일에 존재합니다. (그래서 단지 점). 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

예 :

hdhelft=`cat /sometextfile` 
if grep "." $hdhelft  
then  
hdhelf2=something  
fi  

답변

1

즉 당신이 정말로 원하는 않는 한 변수로 파일을 읽을 필요가 없습니다. 그것은 당신의 코드에서 당신이 원하는 것을 완전히 명확하지 않습니다,하지만 여기에 제 해석입니다. 이를 해석하기 위해 grep-F 플래그를 사용하십시오. 리터럴로, -q을 사용하므로 출력이 없습니다 (예 또는 아니오). 또한 $hdhelft에 파일의 내용이 포함되도록하려면 $(<filename)을 사용하십시오. GREP가 "모든 문자"로 해석으로

hdhelft=$(</sometextfile) 
if grep -qF '.' /sometextfile; then 
    hdhelf2=something 
fi 
+0

예 :-) 감사합니다. – user1602596

1

당신은 . 문자를 이스케이프해야합니다. 따라서 다음을 사용하십시오.

grep '\.' yourfile 
관련 문제