【问题标题】:How to extract a piece of text within double quotes from a line如何从一行中提取双引号内的一段文本
【发布时间】:2009-11-25 11:24:37
【问题描述】:

他是个好人。不过,“Rob”不喜欢它。

如何使用 shell 脚本从这一行中提取 Rob

【问题讨论】:

    标签: shell


    【解决方案1】:

    这是我想到的第一个方法:

    echo "He is a nice guy. \"Rob\" doesn't like it though" | cut -d'"' -f2
    

    当然可以使用 sed 或 awk 完成。

    这是作业吗?

    【讨论】:

      【解决方案2】:
      $ echo "He is a nice guy. \"Rob\" doesn't like it though." | gawk -F'"' '{print $2}'
      Rob
      

      【讨论】:

        【解决方案3】:

        你可以只使用外壳

        $ string="He is a nice guy. \"Rob\" doesn't like it though."
        $ string=${string#*\"}
        $ echo ${string%%\"*}
        Rob
        

        【讨论】:

          【解决方案4】:

          这是另一个解决方案,试试这个

          echo "ROB" | tr ""''
          

          前两个“”是双引号,后两个是单引号

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 2020-10-31
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多