2013-09-12 5 views

ответ

0

Я не могу придумать какую-либо стандартную утилиту командной строки unix/gnu специально для этого. Вы можете сделать скрипт на одну строку, как это:

awk '{nums[n++]=$1;if ($1 > max) max=$1} END {for (i=0; i<n; i++){ printf "%15.5f ",nums[i]; y=(nums[i] * 50)/max + 0.5; for(j=0; j<y; j++) printf "X";printf "\n";} }' < fileOfNumbers 
0

Вот Python один лайнер (проверено на Python 2.7.5 и 3.3.2). Он не очень хорошо подходит для чисел с плавающей запятой (извините, OP) и не выводит граф или группы в ячейки. Но он будет считать вещи, которые не являются цифрами. Возможно, это не совсем полезно для этой ситуации, но я считаю, что разнообразие - это что-то особенное.

python -c'import collections as c, sys, pprint as p; p.pprint(c.Counter(map(int, sys.stdin.read().split())))' < fileOfNumber 
Смежные вопросы