【问题标题】:how to combine multi bash parameter expansion [duplicate]如何结合多bash参数扩展[重复]
【发布时间】:2016-05-30 08:07:47
【问题描述】:

bash 参数扩展有一些有用的功能,例如子字符串,替换,上,下。如何在不定义临时参数的情况下组合这些功能?

f="abc.txt"
e=${f:4:3}   #txt
echo ${e^^}  #TXT

我将 e 定义为高于 txt。 echo ${${f:4:3}^^} 不能工作。是否可以省略e。如果在java中我可以写

String f="abc.txt";
System.out.print(f.substring(4,7).toUpperCase());

我也可以

System.out.print("abc.txt".substring(4,7).toUpperCase());

【问题讨论】:

  • Bash 与 Java 不同,它不是作为应用程序语言设计的,它是一个 shell。您不能期望两者具有相同级别的功能,它们是针对不同工作的不同工具。特别是在这种情况下,shell 解析以与传统编程语言完全不同的方式完成。

标签: bash parameters expansion


【解决方案1】:

不,这在bashAFAIK 中是不可能的。

为了使之成为可能,当指定超过 1 个参数扩展时,我们需要某种优先级(以及解析逻辑更改),目前还没有代码。

【讨论】:

    猜你喜欢
    • 2015-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多