GHL's Notes/

Linux Shell 如何快速把换行转换成数组

最近在写脚本的时候偶然查到的。

举个例子吧,例如我有一个文件,他的内容是这样的

xxxxxx
bbbbbb
cccccc

那我想把他们全部分开,怎么办呢

原本我以为很复杂,查了一堆资料,又是IFS啊,又是sed,后来,有位兄弟的回答真是一言惊醒梦中人。

list=($(cat /home/xxxx.txt))
这样就他妈行了。linux shell居然会自动把换行转换成数组。

然后就能开心的使用for循环历遍了

for i in "${list[@]}"; do
     xxxxc
done

linux shell牛批。

留下一条评论

共有 2 条评论

  1. Duncan:

    你有没有考虑过
    aa vvv
    bbbbb
    cccccc
    这种情况 真TMD恶心

    July 17th, 2022 at 05:10 pm 回复
    1. GHL:

      改IFS。
      IFS='\n'
      xxx=(字符串)
      然后再用awk分开

      July 23rd, 2022 at 06:00 pm 回复