【问题标题】:How do you echo a string from a list in cygwin shell script如何从 cygwin shell 脚本中的列表中回显字符串
【发布时间】:2013-06-11 02:14:44
【问题描述】:
seven="( . 1 . 1 . 1)"
octal="zero one two three four five six seven"

for n in $octal
do
   echo $n
done

当它达到七时,它会回显“七”。你如何让它回显( . 1 . 1 . 1) 这是$seven 的字符串?

【问题讨论】:

  • 您希望它为其他人回响什么?
  • 您也想要 C shell 的答案吗?相同的代码不太可能同时适用于它和bash

标签: bash shell cygwin echo csh


【解决方案1】:
seven="( . 1 . 1 . 1)"
octal="zero one two three four five six seven"

for n in $octal
do
   echo "${!n:-$n}"
done

【讨论】:

  • 效果很好! ${n:-$n} 和 $(!n:-$n} 有什么区别?
  • ! 是间接的;它告诉 bash 使用包含在变量中的名称而不是变量本身来查看变量。
猜你喜欢
  • 1970-01-01
  • 2017-08-06
  • 1970-01-01
  • 2020-03-24
  • 1970-01-01
  • 1970-01-01
  • 2012-12-21
  • 2019-12-10
  • 1970-01-01
相关资源
最近更新 更多