贾琏为什么叫二爷| 头孢过敏用什么药代替| 梦见修路什么意思| 山东简称为什么是鲁不是齐| 石斛能治什么病| 糖尿病可以吃什么菜| 白带变绿用什么药| sy什么意思| trust是什么意思| 颈动脉挂什么科| 丁香泡水喝有什么功效和作用| 吃什么安神有助于睡眠| 请惠存是什么意思| 高的部首是什么| 查血清能查出什么病| 血小板偏高是什么原因| 吃什么补肾最快最有效| 什么花一年四季都开| 女性肝囊肿要注意什么| 终端是什么意思| 北是什么生肖| 什么叫翡翠| 什么叫慢性非萎缩性胃炎| 见红是什么颜色| 蒲公英什么时候采最好| 喝中药不能吃什么东西| 梦到自己开车是什么意思| 豆腐不能和什么一起吃| 什么是晶体| 炎症用什么药最好| 便秘什么原因| 心里烦躁是什么原因| 提手旁有什么字| 左手麻木是什么原因引起的| 总是想睡觉是什么原因| 阴历六月十八是什么日子| 刮痧是什么| hipanda是什么牌子| 包饺子什么馅好吃| o型血和b型血的孩子是什么血型| 抑郁症看什么科| 睾丸变小是什么原因| 高烧不退是什么病毒| 尿泡沫多是什么原因| 计数单位是指什么| 述说是什么意思| 什么山什么水| 鸟进屋有什么预兆| 苹果煮水喝有什么好处和坏处| 乙肝两对半45阳性是什么意思| 翌日什么意思| 骨灰盒什么材质的好| 什么样的土豆不能吃| 祖坟冒青烟是什么意思| 主动脉硬化是什么意思| 清影是什么意思| 嘴唇发白是什么原因引起的| 嘴巴干苦是什么原因| 硅对人体有什么危害| 半胱氨酸是什么| 肺气不足吃什么中成药| 6月28日是什么日子| 男人占有欲强说明什么| 鼻窦炎是什么原因引起的呢| 辱骂是什么意思| 肌肉疼痛挂什么科| 汗斑用什么药| 头昏和头晕有什么区别| 献血前吃什么东西最好| 门庭冷落是什么意思| 干事是什么职务| 什么姿势最深| 大师是什么意思| 医学影像技术是干什么的| 出汗发粘是什么原因| 什么其谈| 香水edp什么意思| 不到长城非好汉的下一句是什么| vc是什么| 脾喜欢什么食物| lalabobo是什么牌子| 凌晨四点是什么时辰| 什么病误诊为帕金森| 开五行属什么| 扁桃体发炎吃什么药好得快| 苏打是什么| 人参泡酒有什么功效| 为什么合欢树又叫鬼树| 如意是干什么用的| 小孩口腔溃疡吃什么药| 10年是什么年| 容貌是什么意思| 雌激素过高吃什么药| 出虚汗是什么原因引起的| 10月15号是什么星座的| 属虎的和什么属相最配| 横纹肌溶解是什么意思| 为什么会得荨麻疹呢| 气血两亏是什么意思| 李开复是什么人| 唯字五行属什么| 蔬菜用什么肥料最好| 干咳 吃什么药| 附骨疽是什么病| pn医学上是什么意思| 正值当年什么意思| 水痘不能吃什么食物| hippo什么意思| 用什么刷牙能使牙齿变白| 无创是什么意思| 起飞是什么意思| 炖牛肉放什么容易烂| 翻什么越什么| zara是什么品牌| 胃胀腹胀吃什么药| 血糖高喝什么稀饭好| 桃胶什么时候采摘最好| 过敏性鼻炎用什么药效果最好| 18号来月经什么时候是排卵期| 肠胃炎喝什么药| 南北杏和什么煲汤止咳化痰| 传染病四项挂什么科| 思前想后是什么意思| 什么是补铁的食物| 清酒和白酒有什么区别| 70年属什么| 脚后筋疼是什么原因引起的| 耍小聪明是什么意思| 什么是抹茶| 377是什么| 吃什么补雌激素| 慢性胃炎可以吃什么水果| hold住是什么意思| 严重失眠吃什么药最好| 财神爷供奉什么供品| 姐姐家的孩子叫什么| 什么是假性近视| 早上4点是什么时辰| 舌头有问题应该挂什么科| 咳嗽痰中带血是什么原因| 试金石什么意思| 二审是什么意思| 慰安妇是什么| 白脸红脸代表什么| 甲钴胺不能和什么药一起服用| 六味地黄丸什么时候吃最好| 新的五行属性是什么| 永垂不朽是什么意思| 矢的意思是什么| 菲妮迪女装是什么档次| 百香果不能和什么一起吃| 男生生日送什么礼物好| adivon是什么牌子| 儿童肠系膜淋巴结炎吃什么药| 斯沃琪手表什么档次| 男孩叫什么名字| 安全起见是什么意思| 女人被操是什么感觉| 为什么做春梦| 抗缪勒氏管激素是检查什么的| 伽马刀是什么| 朱元璋为什么不传位给朱棣| 什么叫宫腔粘连| 媒婆是什么意思| 裘皮是什么皮| 脚背痛什么原因引起的| 眼睛散光是什么意思| 黄体酮有什么作用| 割包皮有什么影响| pid是什么| 重复肾是什么意思| 一九九八年属什么生肖| 梦见男朋友是什么意思| 什么是人工智能| 什么节日吃饺子| 2009年五行属什么| 脆肉鲩是什么鱼| 乳腺纤维瘤和乳腺结节有什么区别| 泸州老窖是什么香型| jay什么意思| 支原体是什么病| 生长激素是什么| 25岁属什么生肖| 绷不住了是什么意思| 米诺地尔有什么副作用| 女人什么时候是安全期| 96属什么生肖| 知了吃什么东西| 右下腹有什么器官| 戈谢病是什么病| charging是什么意思| 轻度异常脑电图是什么意思| 静怡是什么意思| 修女是什么意思| 肺部条索影是什么意思| 静脉曲张吃什么食物好| 龙眼是什么| 什么水果贵| 女人梦见蛇是什么意思| 蛇为什么会咬人| 壁厚是什么意思| 汗斑是什么样的图片| 旬空是什么意思| 甲沟炎用什么药好| 女人晚上盗汗是什么原因| 康复科是主要治疗什么| 央企和国企有什么区别| 恢复是什么意思| 喜欢白色的人是什么性格| 圣代是什么| 护佑是什么意思| 喝什么茶去火排毒祛痘| 太阳指什么生肖| 猴子是什么颜色| 田亮为什么不娶郭晶晶| 专情是什么意思| black什么颜色| 慢性心肌炎有什么症状| 10月7日是什么星座| 藏医最擅长治什么病| 玉兰花什么季节开| 坐位体前屈是什么| 一箭双雕是指什么生肖| 变色龙吃什么食物| 博士点是什么意思| mmhg是什么单位| 登革热吃什么药| 鸡蛋和什么搭配最营养| 怀孕前期有什么征兆| 仪轨是什么意思| 一剪梅是什么意思| 苍蝇吃什么食物| 三个火读什么| 流金岁月什么意思| ipa啤酒什么意思| 96100是什么电话| 心脏大是什么病严重吗| 7月8日是什么星座| 跑步腰疼是什么原因| 梦见买苹果是什么征兆| 象牙白适合什么肤色| butterfly什么意思| 头发斑秃是什么原因引起的| 嬴姓赵氏是什么意思| 眼球有黑色斑点是什么| 什么样的充电宝不能带上飞机| skg是什么品牌| 排骨炖什么| 打嗝挂什么科| 每年什么时候征兵| 花儿为什么这样红简谱| 酱酱酿酿是什么意思| 关节疼痛挂什么科| 什么是冰晶| 痔疮嵌顿是什么意思| 竖中指什么意思| hpv弱阳性是什么意思| 盆腔炎吃什么消炎药| 莽是什么意思| 什么既什么又什么| 纵容是什么意思| 什么一现| 全职太太是什么意思| 蜈蚣咬了用什么药| 百度Vai al contenuto

中华预防医学会妇女保健分会第五届换届...

Da Wikipedia, l'enciclopedia libera.
Banner
software
GenereUtility
Data prima versionesysvbanner: 4 febbraio 1997
Sistema operativoUnix-like
LicenzaGPLv3+
(licenza libera)
百度 为避免该功能的失效给更多的用户在使用手机时带来困扰,我们不得不宣布“我的支出”将不再支持微信的自动记账。

banner è un comando presente nei sistemi Unix e Unix-like. Produce una ASCII art del testo fornito come argomento.

Un utilizzo di questo comando consiste nel creare pagine di separazione ben visibili tra i fogli da stampare.[1]

Funzionamento

[modifica | modifica wikitesto]

Ogni argomento è troncato in blocchi di 10 caratteri i quali vengono stampati su "linee" differenti. Per stampare più parole su una singola linea, esse devono essere quindi passate come un singolo argomento, cosa che viene eseguita dalla shell eseguendo l'escape o citando le parole a seconda dei casi.[1] Un programma correlato e più flessibile è FIGlet, il quale può mostrare il testo con diversi font.[2]

Implementazione

[modifica | modifica wikitesto]

Il modo in cui il programma viene implementato internamente è antiquato. I font utilizzati sono inseriti nel codice del programma stesso, come strutture di dati inizializzate staticamente. Vengono utilizzate due strutture di dati: la prima è una tabella di dati comprendente una sequenza di istruzioni di stampa che codificano la bitmap per ogni carattere (in una codifica specifica del programma banner) mentre la seconda è un indice che in quella tabella indica, per ogni codice carattere, dove iniziano e finiscono le istruzioni di stampa per quel carattere.[3]

Entrambe le strutture dati sono state scritte a mano. Spinellis osserva che è "difficile trovare un formato dati più soggetto a errori e non mantenibile". Egli osserva un netto contrasto tra il codice sorgente del programma banner e il codice sorgente automaticamente generato per codificare i font nella sezione program data (usando nel codice sorgente i dati del font 6×10 del port mac68k di NetBSD per confronto). I dati generati automaticamente sono stati generati da un file bitmap, a sua volta generato utilizzando un programma di creazione/modifica bitmap con un'interfaccia utente grafica. Successivamente essi vengono commentati, documentando con ASCII art come sono stati derivati i pattern di bit. Tali dati sono organizzati in modo semplice ed ovvio: una sequenza di lunghezza fissa di byte non codificati per ogni glifo.[3]

Spinellis osserva inoltre che nei moderni sistemi informatici è raramente sensato incorporare tali dati nell'immagine eseguibile del programma stesso, poiché i guadagni in termini di prestazioni in tal modo sono trascurabili. Fare ciò rende difficile adattare il programma a diverse localizzazioni oppure mantenere il programma. L'approccio più seguito nei sistemi moderni è quello di archiviare tali informazioni in un file di dati separato, distinto dal file immagine eseguibile del programma, o in un resource fork del programma, che il programma legge in fase di esecuzione.[3]

Lista non esaustiva di versioni:

  • Di AT&T, in UNIX System V.[4][5] Nei sistemi basati su Debian il comando banner è fornito da questa versione nel pacchetto sysvbanner[6] e per quest'ultimo, banner accetta esclusivamente il testo sotto forma di argomento non permettendone l'utilizzo tramite pipe.
  • Di Cedar Solutions. Gira su sistemi moderni Linux a partire dal 2008. Stampa solo orizzontalmente con una dimensione fissa del font.
  • Di Mary Ann Horton all'Università della California - Berkeley, distribuita come parte del pacchetto bsdmainutils, sotto il nome di printerbanner. Può essere eseguita su versioni moderne di Linux, GNU Hurd, e sistemi Mac OS X a partire dal 2008. Stampa verticalmente con la possibilità di variare la dimensione del font.

Esempio di utilizzo di banner in un'applicazione orientata al terminale, in Debian:

 $ banner 'Hello!'
 #     #                                   ###
 #     #  ######  #       #        ####    ###
 #     #  #       #       #       #    #   ###
 #######  #####   #       #       #    #    #
 #     #  #       #       #       #    #
 #     #  #       #       #       #    #   ###
 #     #  ######  ######  ######   ####    ###

Una lettera dal programma banner orientato alla stampa come di solito si presenta in BSD e derivati:

 $ banner -w80 "a"
                          #####
                        #########
                     ###############        ###
                    ################      ######
                   ##################     ########
                   #####         #####    #########
                   ####           ####      ##  ###
                   ###            ####           ##
                   ###            ###            ##
                   ###            ###           ###
                    ####         ###           ####
                      #############################
                    ##############################
                   ##############################
                   ############################
                   ###########################
                   ###
                   #
                   #

In questo esempio il comando banner stampa l'ora corrente fornita tramite date all'atto della chiamata.

 $ banner `date +"%H:%M:%S"`
  #####   #####     #     #####  #######    #       #    #
 #     # #     #   # #   #     # #    #    # #     ##    #    #
       #       #    #          #     #      #     # #    #    #
  #####   #####           #####     #               #    #######
 #             #    #          #   #        #       #         #
 #       #     #   # #   #     #   #       # #      #         #
 #######  #####     #     #####    #        #     #####       #

Mostra un orologio dinamico per circa 1000 secondi[N 1] (equivale all'utilizzo dell'utility FIGlet con la sostituzione di banner con figlet -f banner):

 $ repeat 1000 sh -c '( clear ; date +" %H.%M.%S" | xargs banner ; sleep 1)'

   #     #####             #     #####          ####### #######
  ##    #     #           ##    #     #         #       #
 # #    #                # #          #         #       #
   #    ######             #     #####          ######  ######
   #    #     #   ###      #    #         ###         #       #
   #    #     #   ###      #    #         ###   #     # #     #
 #####   #####    ###    #####  #######   ###    #####   #####
  1. ^ Se il codice seguente non è eseguito da una shell Zsh il comando repeat necessita di essere definito,[7] come in questo frammento di codice:
    function repeat(){
    for ((i=0;i<$1;i++)); do
       eval ${*:2}
    }
    

    oppure tale definizione può essere evitata rimpiazzando direttamente il comando repeat con un ciclo while:

    $ i=0 ; while (($i<1000)); do sh -c '( clear ; date +" %H.%M.%S" | xargs banner ; sleep 1 ; ((i=$i+1)))' ; done
    

Bibliografiche

[modifica | modifica wikitesto]
  1. ^ a b (EN) Steve Moritsugu, Sanjiv Guha, James Edwards e David Pitts, Practical UNIX, Indianapolis, Que Publishing, 2000, pp. 220–221, ISBN 0-7897-2250-X. URL consultato il 26 gennaio 2022. Ospitato su archive.org.
  2. ^ (EN) Arnold Robbins, UNIX in a Nutshell, 4a ed., O'Reilly, 2006 [1989], pp. 24, ISBN 0-596-10029-9. URL consultato il 26 gennaio 2022. Ospitato su archive.org.
  3. ^ a b c (EN) Diomidis Spinellis, Code Quality, Adobe Press, 2006, pp. 70–71, ISBN 0-321-16607-8.
  4. ^ (EN) Hatch, System V in AIX and Dynix/ptx, su zen77087.zen.co.uk, 19 aprile 2004. URL consultato il 23 luglio 2008 (archiviato dall'url originale il 26 maggio 2009).
  5. ^ (EN) AIX 7.2: banner Command, su ibm.com, IBM. URL consultato il 27 gennaio 2022.
  6. ^ (EN) Dettagli sul pacchetto sysvbanner in Debian (v. 1.0.15 o successive), su packages.debian.org, Debian. URL consultato il 6 maggio 2010 (archiviato il 20 dicembre 2016).
  7. ^ (EN) J?drzej Frankowski, Linux Commands – Repeat a Command n Times, su baeldung.com, 8 maggio 2020. URL consultato il 22 gennaio 2022 (archiviato il 19 novembre 2021).
  • (EN) Amir Afzal, The banner command, in UNIX Unbounded, Prentice Hall, 2008, pp. 462–463, ISBN 0-13-119449-6.

Voci correlate

[modifica | modifica wikitesto]
  • FIGlet – una utility Linux che fornisce la stessa funzionalità quando viene scelto il font banner

Collegamenti esterni

[modifica | modifica wikitesto]
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica
盆腔炎要做什么检查 梦见屎是什么预兆 娭毑是什么意思 教皇是什么意思 o型血是什么血型
尿结石有什么症状 浆细胞肿瘤是什么病 腾蛇是什么意思 牙周炎挂什么科 支原体感染是什么症状
七九年属什么生肖 夜游神是什么意思 发呆表情是什么意思 封闭针是什么 额头发黑是什么原因
神经性头疼吃什么药效果好 血糖高吃什么中药 阴道炎用什么药好 ai是什么元素 秦王是什么生肖
骨折和骨裂有什么区别hcv9jop8ns2r.cn 什么是手淫hcv8jop5ns2r.cn 痰多吃什么好hcv8jop0ns4r.cn 鸡拉绿色粪便吃什么药hcv8jop9ns6r.cn 男性手心热是什么原因hcv8jop2ns4r.cn
生物技术专业学什么hcv9jop4ns8r.cn 孔子是什么时期的人hcv9jop3ns7r.cn 淋巴结节挂什么科hcv9jop7ns0r.cn 长绒棉和全棉什么区别hcv9jop2ns0r.cn 百分点是什么意思hcv8jop8ns0r.cn
肩胛骨缝疼挂什么科hcv9jop4ns6r.cn 罗贯中是什么朝代的hcv8jop6ns8r.cn 六畜大宝在农家是什么生肖hcv8jop8ns4r.cn 为什么吐后反而舒服了hcv8jop7ns7r.cn 醋纤是什么面料hcv8jop0ns7r.cn
什么主皮毛wuhaiwuya.com 痛风打什么针wzqsfys.com 血管检查什么方法最好hcv9jop5ns7r.cn 畸胎瘤是什么病严重吗jinxinzhichuang.com 眼睑炎用什么药hcv7jop7ns3r.cn
百度