bash - 用 tr 或类似的交换 bash 中的两个字符
问题描述
我正在做一个 bash 脚本,但我遇到了问题。我想更改字符串中两个字符的位置。
我的输入如下:
"aaaaa_eeeee"
所需的输出是:
"eeeee_aaaaa"
我不想反转字符串或其他类似的东西,我需要用“e”替换字符“a”,用“a”替换“e”。我试图制作一个echo "aaaaa_eeeee" | tr "a" "e
. 第一个替换很简单,但第二个我不知道该怎么做。
解决方案
您可以将多个原始字符和替换字符赋予tr
. 原始字符串中的每个字符都被相应的替换字符替换。
echo "aaaaa_eeeee" | tr "ae" "ea"
推荐阅读
- python - 如何将 python 源代码构建到当前目录?
- scheme - 如何在 Scheme 中修复此代码,我试图在其中找到列表中的最后两个元素
- angular - 提交表单后 URL 是否应该更改?
- c++ - 使用模数解决硬币找零问题
- webgl - 使用扇区绘制球体并堆叠 WebGL
- google-analytics - Google Analytics:“在此服务器上找不到请求的 URL /analytics/v3/data/realtime/”
- aws-glue - 如何强制爬虫更新特定表?
- arrays - 在 Julia 中使用 2d 函数值填充数组
- exception - x86:使用 OFFSET 运算符访问数组地址时访问写入冲突
- ruby-on-rails - 如何在 ruby 中解析这种数据格式