2012-11-26 151 views
0
echo $BASE_DIR 
PROC_NM="ALLOC$REGION" 
echo $PROC_NM 
BASE_LOG_DIR=`find $BASE_DIR -filename "*$PROC_NM"` 
echo $BASE_LOG_DIR 

返回我:查找命令無法找到變量

"./scripts/checkout_dcc.sh" 113L, 2642C written 
bash-3.2$ ./scripts/checkout_dcc.sh 
/opt/loghome/dream/rio/drop-copy-converter/ 
ALLOC_JPN 
find: invalid predicate `-filename' 

我已經試過這多個不同的報價,但由於某些原因使用變量的搜索目錄發現不喜歡我。

回答

1

它說-filename不是一個有效的謂詞。你需要-name,如man find規定:

$ man find | grep -ce '-filename' 
0 
$ man find | grep -ce '-name' 
15 

使用變量就會按照您期望:

find $BASE_DIR -name "*$PROC_NM"