2012-01-24 176 views
0

我正在處理一個項目,我必須處理作爲參數傳入的目錄的內容,並且需要包含不可見文件(以。開頭的文件)。這就是我正在接近它Shell腳本處理隱藏文件

#!/bin/bash 

cd $1 
for file in `dir -a -d * `; 
do 
#more code blah blah 

即使我在dir命令上使用-a標記,它仍然忽略不可見的文件。任何想法爲什麼?

+0

嗨。三件事1)歡迎來到堆棧溢出! 2)當您在問題中粘貼代碼時,請突出顯示代碼,然後按CTRL + K或單擊與大括號'{}'似的按鈕。 3)請點擊加/減計數器旁邊的複選框,接受最能解決您問題的答案。對它進行upvoting也不會傷害;)謝謝! – SiegeX

回答

4

只是做:「」

#!/bin/bash 

shopt -s dotglob 
cd "$1" 
for file in *; do 
    # more code blah blah 
done 

bash manpage

當一個圖案在 用於文件名擴展,字符的文件名的開頭或緊跟在斜槓必須除非設置了shell選項dotglob,否則會顯式匹配 。

+0

+1 - 這也很好解釋爲什麼他的嘗試不好(分詞) – jordanm