Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个数组,其中包含 CPU 核心编号和每个核心的编号。数组是总数。
我该如何排序
totals=( CPU0=12345 CPU1=23456 CPU3=01234)
根据数字并返回 cpu 编号的排序版本,例如 (3,0,1) 表示它已排序,核心 3 是最小值,核心 1 是最大值,在 bash 中?然后将 (3,0,1) 分配给数组?
试试这个进行排序:
echo ${totals[*]} | tr ' ' '\n' | sort -n -t= -k2
要仅将 CPU 编号存储在新数组中,请尝试:
sorted_cpu_numbers=( $(echo ${totals[*]} | tr ' ' '\n' | sort -n -t= -k2 | awk -F= '{print substr($1, 4, length($1))}') )