2012-04-18 59 views
0

我在.bash_aliases文件中以下行:LS別名

# Prettify and streamline listings 
alias ls='ls --color' 
alias ll='ls -l' 
alias la='ls -a' 
alias lla='ls -al' 
alias lF='ls -F' 
alias laF='ls -laF' 
alias llF='ls -lF' 
alias llaF='ls -alF' 

別名做工精細,但我輸送至egrep命令查找隱藏文件時遇到了麻煩。例如,如果我想列出目錄中的所有不可見文件,並輸入la | egrep '^\.',則不會輸出。即使我跳過別名並輸入ls -a | egrep '^\.',我仍然沒有輸出。如果我省去了插入符號,它就會起作用,但當然在這種情況下,egrep會列出文件名中包含句點的所有文件,而不僅僅是以句點開頭的文件。

但是,如果我重命名.bash_aliases文件並重新登錄,以便這些別名不是活動的,那麼ls -a | egrep '^\.'可以很好地列出不可見文件。很奇怪。

我想弄清楚爲什麼會發生這種情況,我畫了一個空白。有任何想法嗎?謝謝!

回答

1

嘗試下面的命令,你會看到一些原因:

ls --color | cat -v 

你應該使用別名ls='ls --color=auto'而不是ls='ls --color'

+0

非常有趣!謝謝你的幫助。這解決了它,並且我學到了一些東西。你搖滾,n。。 – verbose 2012-04-19 00:39:12