国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 系統(tǒng) > Linux > 正文

Linux命令行開(kāi)發(fā)實(shí)戰(zhàn)1

2024-08-27 23:55:48
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友
  本文將指導(dǎo)您學(xué)習(xí)如何編寫(xiě)即使對(duì)最終用戶而言也足夠簡(jiǎn)單的 Linux 命令行實(shí)用程序。本文以概述可靠的命令行最佳實(shí)踐開(kāi)始,并以詳細(xì)地研究一個(gè)有效的選頁(yè)工具結(jié)束,為您提供動(dòng)手編寫(xiě)自己的實(shí)用程序所需要的背景知識(shí)。
  本文演示如何編寫(xiě)與 cat、ls、pr 和 mv 等標(biāo)準(zhǔn)命令類(lèi)似的 Linux 命令行實(shí)用程序。我選擇了一個(gè)名為 selpg 的實(shí)用程序,這個(gè)名稱(chēng)代表 SELect PaGes。selpg 允許用戶指定從輸入文本抽取的頁(yè)的范圍,這些輸入文本可以來(lái)自文件或另一個(gè)進(jìn)程。selpg 是以在 Linux 中創(chuàng)建命令的事實(shí)上的約定為模型創(chuàng)建的,這些約定包括:
 
  獨(dú)立工作
 
  在命令管道中作為組件工作(通過(guò)讀取標(biāo)準(zhǔn)輸入或文件名參數(shù),以及寫(xiě)至標(biāo)準(zhǔn)輸出和標(biāo)準(zhǔn)錯(cuò)誤)接受修改其行為的命令行選項(xiàng)。不久前我為一位客戶開(kāi)發(fā)了 selpg。隨后我將它公布在一個(gè) UNIX 郵件列表上,結(jié)果有許多成員告訴我他們發(fā)現(xiàn)這是一個(gè)有用的工具。
 
  該實(shí)用程序從標(biāo)準(zhǔn)輸入或從作為命令行參數(shù)給出的文件名讀取文本輸入。它允許用戶指定來(lái)自該輸入并隨后將被輸出的頁(yè)面范圍。例如,如果輸入含有 100 頁(yè),則用戶可指定只打印第 35 至 65 頁(yè)。這種特性有實(shí)際價(jià)值,因?yàn)樵诖蛴C(jī)上打印選定的頁(yè)面避免了浪費(fèi)紙張。另一個(gè)示例是,原始文件很大而且以前已打印過(guò),但某些頁(yè)面由于打印機(jī)卡住或其它原因而沒(méi)有被正確打印。在這樣的情況下,則可用該工具來(lái)只打印需要打印的頁(yè)面。
 
  除了包含 Linux 實(shí)用程序現(xiàn)實(shí)的示例外,本文還有以下特性:
 
  它用實(shí)例說(shuō)明了 Linux 軟件開(kāi)發(fā)環(huán)境的能力。它演示了對(duì)一些系統(tǒng)調(diào)用和 C 庫(kù)函數(shù)的適當(dāng)使用,其中包括 fopen、fclose、access、setvbuf、perror、strerror 和 popen。它實(shí)現(xiàn)了打算用于通用目的的實(shí)用程序(而不是一次性程序)所應(yīng)有的那種徹底的錯(cuò)誤檢查。它對(duì)潛在的問(wèn)題提出警告,如在 C 中編程時(shí)可能出現(xiàn)的緩沖區(qū)溢出,并就如何預(yù)防這些問(wèn)題提供了建議。它演示了如何進(jìn)行手工編碼的命令行參數(shù)解析。它演示了如何在管道中以及在輸入、輸出和錯(cuò)誤流重定向的情況下使用該工具。
 
  Linux 命令行準(zhǔn)則
 
  通用 Linux 實(shí)用程序的編寫(xiě)者應(yīng)該在代碼中遵守某些準(zhǔn)則。這些準(zhǔn)則經(jīng)過(guò)了長(zhǎng)期發(fā)展,它們有助于確保用戶以更靈活的方式使用實(shí)用程序,特別是在與其它命令(內(nèi)置的或用戶編寫(xiě)的)以及 shell 的協(xié)作方面 主站蜘蛛池模板: 陕西省| 新丰县| 永清县| 承德县| 泽库县| 遂平县| 溧水县| 东山县| 东兴市| 贡觉县| 石景山区| 华容县| 宝鸡市| 永福县| 无为县| 阜宁县| 丰宁| 抚州市| 讷河市| 合作市| 龙口市| 高雄县| 舞钢市| 元江| 蒙城县| 日照市| 延长县| 漳平市| 丰城市| 吉安县| 丹江口市| 思南县| 祥云县| 弥勒县| 修文县| 昭觉县| 江油市| 泰安市| 铜川市| 长海县| 乐昌市|