如何将从列名中获得的值映射到一个数组,以便以后在bash脚本中使用?
+------------------------------+----------+-----------+---------+
| name | status | update | version |
+------------------------------+----------+-----------+---------+
| enable-jquery-migrate-helper | inactive | none | 1.0.1 |
| gravityforms | inactive | none | 2.4.17 |
| gutenberg | inactive | none | 8.8.0 |
| redirection | inactive | none | 4.8 |
| regenerate-thumbnails | inactive | none | 3.1.3 |
| safe-svg | inactive | none | 1.9.9 |
| weglot | inactive | none | 3.1.9 |
| wordpress-seo | inactive | available | 14.8 |
+------------------------------+----------+-----------+---------+
我已经尝试了以下操作,但这只会将标题的名称保存在表中:
IFS=$'\n' read -r -d '' -a my_array < <( wp plugin list --status=inactive --skip-plugins && printf '\0' )
回声 $ my_array
name status update version
检索值后,我想遍历它们以将它们添加到数组中
答案 0 :(得分:2)
如果您的意图是使用shell或awk脚本映射结果,则最好使用CSV输出格式而不是默认表格式:
wp plugin list --status=inactive --skip-plugins --format=csv
它将输出以下内容:
name,status,update,version
enable-jquery-migrate-helper,inactive,none,1.0.1
gravityforms,inactive,none,2.4.17
gutenberg,inactive,none,8.8.0
redirection,inactive,none,4.8
regenerate-thumbnails,inactive none,3.1.3
safe-svg,inactive,none,1.9.9
weglot,inactive,none,3.1.9
wordpress-seo,inactive,available,14.8