awk / sed 脚本删除文本
我目前需要一种方法来以编程方式从我正在处理的 Makefile 中删除一些文本。现在的问题是(无论出于何种原因)makefile 是使用 -l
链接命令生成的,而它们应该使用 -l
。所以我需要一个脚本来查找所有出现的 -l/
,然后删除直到并包括下一个 /
。
我正在处理的例子
-l/home/user/path/to/boost/lib/boost_filesystem
我需要它
-lboost_文件系统
可以想象,这是一个权宜之计,直到我解决真正的问题(在生成方面),但与此同时,如果这可行的话,这对我来说将是一个很大的帮助,而且我不太擅长我的 awk 和sed。
感谢您的任何帮助。
I am currently in need of a way to programmatically remove some text from Makefiles that I am dealing with. Now the problem is that (for whatever reason) the makefiles are being generated with link commands of -l<full_path_to_library>/<library_name>
when they should be generated with -l<library_name>
. So what I need is a script to find all occurrences of -l/
and then remove up to and including the next /
.
Example of what I'm dealing with
-l/home/user/path/to/boost/lib/boost_filesystem
I need it to be
-lboost_filesystem
As could be imagined this is a stop gap measure until I fix the real problem (on the generation side) but in the meantime it would be a great help to me if this could work and I am not too good with my awk and sed.
Thanks for any help.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
干得好
Here you go