【问题标题】:Changing vowels to numbers in Bash prompt PS1在 Bash 提示符 PS1 中将元音更改为数字
【发布时间】:2020-10-15 08:18:30
【问题描述】:

我正在尝试更改我的用户提示 bash,以便显示与该元音对应的数字,而不是显示元音。所以,a -> 1, e -> 2, i -> 3, o -> 4, u -> 5.

到目前为止,我实现的是所有具有相同数字的元音,如下所示。但是我不知道该怎么做。

PS1='${USER//[io]/4}@ \D{%d-%m-%Y} - \w$ '
  • 当前名称输出:L4l4p4p (Lolipop)

  • 预期名称输出:L4l5p4p

谁能帮忙?

谢谢

【问题讨论】:

  • 提示:您可以在 PS1 中包含 1 个或多个 bash 函数以允许进行任何修改。示例:PS1='... $(myfunction param) ...'
  • 作为补充:做类似的事情:PS1='... $(tr aeiou 12345 <<<"INPUT" ) ...'

标签: bash ps1


【解决方案1】:

带 bash 和参数扩展:

PS1='$(USER="${USER//a/1}"; USER="${USER//e/2}"; USER="${USER//i/3}"; USER="${USER//o/4}"; echo "${USER//u/5}")@ \D{%d-%m-%Y} - \w$ '

【讨论】:

    【解决方案2】:

    我会使用 sed。

    PS1='$(<<<"$USER" sed "s/a/1/g;s/e/2/g;s/i/3/g;s/o/4/g;s/u/5/g") '
    

    【讨论】:

    • sed 'y/aeiou/12345/'
    猜你喜欢
    • 2012-04-16
    • 2011-08-04
    • 1970-01-01
    • 2012-04-28
    • 1970-01-01
    • 2012-12-14
    • 1970-01-01
    • 1970-01-01
    • 2022-01-20
    相关资源
    最近更新 更多