交换字符串中的字符位置 (bash)
Swapping character locations in a string (bash)
我遇到了一个问题,我需要更改 bash 中字符串中字符的顺序,以获取 sim 卡的 ICCID。
我从调制解调器获取的号码是这样的; 980136010000006187F5。我需要做的是,将字符串中的字符成对地取出来,逆向背诵。在此示例中,98 将是 89,01 将是 10 等等,最后加起来为 8910631000000016785F,这是正确的 ICCID 号码。
我认为这可能可以使用 sed 或某种 for 循环,但我对如何实现这一点感到困惑。非常感谢您的帮助!
此致,
卡尔
sed
轻松搞定
sed 's/\(.\)\(.\)//g' <<<980136010000006187F5
sed 命令找到与 ..
的每个匹配项(即一对字符),独立捕获它们,然后用倒序的两个捕获替换它们。
我遇到了一个问题,我需要更改 bash 中字符串中字符的顺序,以获取 sim 卡的 ICCID。
我从调制解调器获取的号码是这样的; 980136010000006187F5。我需要做的是,将字符串中的字符成对地取出来,逆向背诵。在此示例中,98 将是 89,01 将是 10 等等,最后加起来为 8910631000000016785F,这是正确的 ICCID 号码。
我认为这可能可以使用 sed 或某种 for 循环,但我对如何实现这一点感到困惑。非常感谢您的帮助!
此致, 卡尔
sed
轻松搞定
sed 's/\(.\)\(.\)//g' <<<980136010000006187F5
sed 命令找到与 ..
的每个匹配项(即一对字符),独立捕获它们,然后用倒序的两个捕获替换它们。