2013-04-26 146 views
0
bash-3.2$ ls -ls 
total 48 
4 -rw-r--r-- 1 hdoostie etrade 1545 Aug 8 2012 ~ 
4 drwxr-xr-- 11 hdoostie etrade 4096 Dec 28 2011 det-us 
4 drwxr-xr-- 6 hdoostie etrade 4096 Sep 18 2012 etaf 
12 -rw-r--r-- 1 hdoostie etrade 11867 Jul 31 2012 l:template name="expanded_search"> 
4 drwxr-xr-- 8 hdoostie etrade 4096 Apr 22 11:31 neo 
4 drwxr-xr-- 5 hdoostie etrade 4096 Jan 29 14:36 neo-apps-skins 
4 drwxr-xr-- 5 hdoostie etrade 4096 Feb 16 2012 neo-webapp-prospect 
4 drwxr-xr-- 3 hdoostie etrade 4096 Feb 22 2012 site_04_uat_in_here 
4 drwxr-xr-- 3 hdoostie etrade 4096 Jun 20 2012 svntest 
4 drwxr-xr-- 3 hdoostie etrade 4096 Feb 23 2012 xborder_in_here 

「l:template name =」expanded_search「>」是某種文件內容,它以某種方式顯示爲文件。我如何「刪除」這個「文件」?Unix - ls命令將某些「輸出」文本顯示爲文件

+1

你的意思是它在'ls'的錯誤,那麼你可以使用刪除該文件?你確定你沒有意外地命名一個文件'l:template name =「expanded_search」>'?你爲什麼確定? – 2013-04-26 18:57:09

+0

我不知道我做了什麼,但不知何故文件內容出現作爲文件名,我試過dglo的答案,它的工作。 – peasant13337 2013-04-26 19:03:47

回答

0
rm l:* 

如果你是謹慎型:

rm -i l:* 
3

刪除任何文件,不管文件名包含在使用它的inode numnber哪些字符的方式。你可以使用:

ls -i 

這會讓你知道inode號碼旁邊的文件。

find -ium [inode_number] -exec rm {} \; 

但在這種情況下,它也應該是不夠的,只是引用的文件名:

rm 'l:template name="expanded_search">'