匹配模式并使用sed追加到行尾

时间:2013-04-17 13:10:40

标签: linux

我有一堆例如:

hello.c                                 
Untitled Folder          
Shell.sh          
Linux        

等等

我想要的是使用sed将/附加到不包含.的行的末尾。即。

hello.c                                                                                                                   
Untitled Folder/     
Shell.sh     
Linux/  

有人能帮助我吗?

2 个答案:

答案 0 :(得分:2)

您可以使用地址:

sed -e '/\./!s=$=/='

这意味着:如果该行没有(!)包含一个点(/\./),请附加/.

答案 1 :(得分:0)

那样的东西?

files = ['hello.c', 'Untitled Folder', 'Shell.sh', 'Linux']
for i, f in enumerate(files):
    if '.' not in f:
        files[i] = "%s/" % f

print files

输出:

['hello.c', 'Untitled Folder/', 'Shell.sh', 'Linux/']