文章目录
使用GO实现selpg
作业要求
使用 golang 开发 开发 Linux 命令行实用程序 中的 selpg
实现思路
刚看到这个作业是这个题目的时候,其实心里完全是懵的。对于一个之前几乎没接触过的东西有一种恐惧感。所以完成这个作业的第一步是先阅读文档并查询其中各个函数的用途,将自己的实现思路理清后,实现就没有那么困难了
代码结构
这次的实现主要参照文档中的c语言分为三个函数,processArgs(),processInput()和main()
- main:命令参数的入口函数
- processArgs:处理参数,进行错误处理
- processInput:根据命令进行操作
建立一个结构进行信息的存储
type selpgArgs struct {
startPage int
endPage int
pageLen int
pageType bool
inFilename string
printDest string
}
样例测试
在这里利用两个文件进行测试
一个是从一行一个数字从1-100的文档(input.txt),和一个有两个换页的文档(test.txt)
selpg -s1 -e1
selpg -s1 -e1 input.txt
默认一页是72行
selpg -s1 -e2 -l4 input.txt
在这里用命令将一页设为4行
selpg -s1 -e2 -f test.txt
对test.txt使用换页符进行换页
selpg -s1 -e2 -l2 test.txt
对test.txt使用一页两行进行换页
selpg -s1 -e2 -l2 test.txt -dlp1
对-d进行测试