当前位置:  开发笔记 > 编程语言 > 正文

bash中的Perl列表有什么好处呢?

如何解决《bash中的Perl列表有什么好处呢?》经验,为你挑选了3个好方法。

在perl中,只需执行以下操作即可存储和迭代名称列表

my @fruit = (apple, orange, kiwi);
foreach (@fruit) {
        print $_;
}

bash中的等价物是什么?



1> Charles Duff..:

bash(与POSIX sh不同)支持数组:

fruits=(apple orange kiwi "dried mango")
for fruit in "${fruits[@]}"; do
  echo "${fruit}"
done

这样做的优点是数组元素可能包含$ IFS的空格或其他成员; 只要它们作为单独的元素正确插入,它们就会以相同的方式读出.



2> emk..:

像这样:

FRUITS="apple orange kiwi"
for FRUIT in $FRUITS; do
  echo $FRUIT
done

请注意,如果水果名称中有空格,则无效.在这种情况下,请参阅此答案,这可能性稍差,但更强大.



3> Chris Jester..:

既然我喜欢的答案已被接受为正确的答案,我现在将进入另一个主题:如何IFS用于个人利益.:-P

fruits="apple,orange,kiwifruit,dried mango"
(IFS=,
 for fruit in $fruits; do
     echo "$fruit"
 done)

我把代码放在括号中,以便将IFS更改隔离到自己的子进程中; 因此,在括号内部分的末尾,将IFS恢复其旧值.:-)

推荐阅读
linjiabin43
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有