【问题标题】:How to replace a string by using UNIX command?如何使用 UNIX 命令替换字符串?
【发布时间】:2017-12-12 17:45:43
【问题描述】:

如何用其他/自身字符串的次数替换一个字符串?

例如UNIX 很好。 将 UNIX 替换 4 次 O/p : UNIXUNIXUNIXUNIX 不错。

类似的方法怎么做n次?

【问题讨论】:

标签: shell unix command-line


【解决方案1】:

这个也不错

echo 'UNIX is good.' | sed 's/[^ ]*/&&&&/'

【讨论】:

  • 如果是n次?而只是 4 次。
【解决方案2】:

有了这个测试文件:

$ cat File
UNIX is good.

试试:

$ awk -v n=4 '{for (i=1;i<n;i++)sub(/(UNIX)+/, "&UNIX")} 1' File
UNIXUNIXUNIXUNIX is good.

或者:

$ s='UNIX is good.'
$ n=4; for ((i=1;i<n;i++)); do s=${s/UNIX/UNIXUNIX}; done; echo "$s"
UNIXUNIXUNIXUNIX is good.

【讨论】:

    【解决方案3】:

    perl 脚本:

    #!/usr/local/bin/perl
    use strict;
    use warnings;
    my $n= 4;
    print 'UNIX'x$n . ' is good';
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-04-11
      • 1970-01-01
      • 1970-01-01
      • 2021-05-16
      • 2012-11-28
      • 2017-12-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多