bash – 在不同长度的字符串中交换特定位置的字符
发布时间:2020-12-15 21:32:04 所属栏目:安全 来源:网络整理
导读:我一直在努力学习sed,我在这里找到的例子是用于交换05082012到20120805的日期,我无法根据目前的需要调整它们. 对于nsupdate脚本,我需要将IP地址10.4.13.22转换为22.13.4.10的反向查找.我最大的问题是有时每个八位字节都可以改变长度,例如: 10.4.13.2和10.19
我一直在努力学习sed,我在这里找到的例子是用于交换05082012到20120805的日期,我无法根据目前的需要调整它们.
对于nsupdate脚本,我需要将IP地址10.4.13.22转换为22.13.4.10的反向查找.我最大的问题是有时每个八位字节都可以改变长度,例如: 10.4.13.2和10.19.8.126 谢谢你的帮助! echo 10.0.2.99 | sed 's/(....)(....)/21/' 这是我目前所尝试的,只是基于这里的另一个问题,但由于这些例子没有提供太多解释,因为……意思是,我无法理解它的作用. 这是该命令.2.910.09的输出,我期待99.2.0.10 直接地,我想重新排列由“.”分隔的每个“部分”. 解决方法
“反转”IPv4地址的“强力”方法是:
sed 's/([0-9]+).([0-9]+).([0-9]+).([0-9]+)/4.3.2.1/g' 或者,对于GNU sed, sed -r 's/([0-9]+).([0-9]+).([0-9]+).([0-9]+)/4.3.2.1/g' (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |