2013-12-09 79 views
0

,所以我新來的Linux ,我想知道我該怎麼做文件名以下Linux命令行:包含數字和替換字符串

1列表包含了一些 [文件的所有名我知道

$ls *[0-9]* 

,但如果我有一個以數字開頭的文件,它不會工作

2也更換任何「一個」在與屏幕和存儲「XX」打印輸出文件名它在一個文件

我達到

ls | tr -u "an" xx >modified.txt 

問題是,它改變爲x和n爲x ...但我想一個沒有一起單獨

感謝

回答

0

列表包含文件的所有名一個數字 您的示例適用於以數字開頭的文件,因此您可能需要說明您正在使用的是哪種Linux系統,或者您正在使用哪種外殼或語言。

# In sh/bash: 
ls *[0-9]* 
# with perl: 
perl -e '@globbed_files = <*[0-9]*>; print "@globbed_files\n"' 
# With find (filters out directories): 
find -maxdepth 1 -name '*[0-9]*' -type f 

更換任何「一個」在與屏幕上的「XX」打印輸出文件名並將其存儲在一個文件

ls | sed 's/an/xx/g' | tee file.out