【问题标题】:How to extract the file name and change the ending in bash? [duplicate]如何提取文件名并更改 bash 的结尾? [复制]
【发布时间】:2019-08-12 14:58:16
【问题描述】:

我有一个 bash 脚本,它接受以 .in 结尾的文件名,例如 a1.in a2.in,我想采用该参数并提取 a1 并将 .out 添加到它,如何我应该这样做吗?

我知道接受参数是$1 - 但我如何提取a1

【问题讨论】:

    标签: string bash


    【解决方案1】:

    要从参数(或其他变量)中删除固定后缀,请使用${1%.in}——这将删除结尾的.in,或者如果参数不以.in 结尾,则不执行任何操作。要添加后缀,只需添加:${1%.in}.out

    要删除 any 后缀,您可以在 % 之后使用 glob 模式,如下所示:${1%.*}。这将删除最短的匹配后缀。可以用%%去掉最长匹配后缀:${1%%.*}

    【讨论】:

      【解决方案2】:

      如果您的文件只有 一个 扩展名:

      $ echo "a.in" | cut -d '.' -f1
      a
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-06-29
        • 2019-02-01
        • 1970-01-01
        • 2021-12-20
        • 2021-09-05
        • 2017-01-18
        • 2015-08-06
        • 1970-01-01
        相关资源
        最近更新 更多