首页 > 解决方案 > 使用 sed 命令忽略完整文件路径

问题描述

我有 2 个日志文件,其中包含文本文件的绝对路径,例如:

***FileName: /usr/abc/1.txt
***FileName: /usr/cde/1.txt 

如何使用“sed”仅用文件名替换完整路径?

喜欢:***文件名:/usr/abc/1.txt --> ***文件名:1.txt

我使用这个: sed -fs/^.*1.txt/1.txt/ ,但有了这个我得到:

***文件名:/usr/abc/1.txt --> 1.txt

标签: shell

解决方案


从你的 --> 符号来看,我认为你想要除了前导路径名之外的所有内容。如果正确,这应该有效:

sed 's:/.*/::' < logfile

或者可能:

cat logfile1 logfile2 | sed 's:/.*/::'

推荐阅读