我需要一個bash腳本,將獲得5個參數,然後根據每個給定的參數,例如輸入是畫散列繪圖輸出棒:根據給定的輸入
8 10 15 5 12
輸出應該是:
8: ########
10: ##########
15: ###############
5: #####
12:############
,如果有可能,使其垂直倒不如
我需要一個bash腳本,將獲得5個參數,然後根據每個給定的參數,例如輸入是畫散列繪圖輸出棒:根據給定的輸入
8 10 15 5 12
輸出應該是:
8: ########
10: ##########
15: ###############
5: #####
12:############
,如果有可能,使其垂直倒不如
對於豎線,你可以使用這個腳本:
#!/bin/bash
max=0
for v in [email protected]; do
if (($v > $max)); then max=$v; fi;
done
printf "%d %d %d %d %d\n" $1 $2 $3 $4 $5
for ((i=1; i<=$max; i++)); do
for j in [email protected]; do
if (($j >= $i)); then
printf "# "
else
printf " "
fi
done
printf "\n"
done
看一看printf
here,尤其是%
莫difier。
我認爲它只用空格填充,所以可能的週轉方式是將輸出管道輸入到tr
以用您的#
char替換空格。
實際上,我鏈接的頁面在「」重複字符(例如打印一行)「有一個有趣的技巧值得檢查。
通過Python腳本。
#!/usr/bin/python
import re
with open('/path/to/input/file', 'r') as f:
f = f.read()
for i in re.finditer(r'\d+', f):
print i.group()+': '+int(i.group())*'#'
你可以分享你到現在爲止所嘗試的嗎? – SMA 2014-10-12 13:29:55