[课程笔记] [命令行参数] 选项:-l -a -i 参数:-l /home main 函数形式: int main(int argc, char *argv[]) main函数是有参数的,而且有返回值 argc:参数的个数 argv[]:指针数组,存放是具体的参数列表 如 ls -l -a -i argv[0] 指向 "ls" argv[1] 指向 "-l" argv[2] 指向 "-a" argv[3] 指向 "-i" a…
argparse - 命令行选项与参数解析(译)Mar 30, 2013 原文:argparse – Command line option and argument parsing 译者:youngsterxyf argparse模块作为optparse的一个替代被添加到Python2.7.argparse的实现支持一些不易于添加到optparse以及要求向后不兼容API变化的特性,因此以一个新模块添加到标准库. 与optparse相比较 argparse的API类似于optparse,甚至在…
在写shell脚本时经常会用到命令行选项.参数处理方式,如: ./test.sh -f config.conf -v --prefix=/home -f 为短选项,它需要一个参数,即config.conf, -v也是一个选项,但它不需要参数–prefix 是一个长选项,即选项本身多于一个字符,它也需要一个参数,用等号连接,当然等号不是必须的,/home可以直接写在–prefix后面,即–prefix=/home 在shell中,可以用以下三种方式来处理命令行参数,每种方式都有自己的应用场景 手工…
[课程笔记] Linux 下编辑调试工具,gcc,gdb. 把高级语言编译成二进制可执行代码的工具. 需要经历四个步骤: (1) 预处理:去掉注释,进行宏替换(#define相关),头文件(#include)包含等工作 gcc -E test.c -o test.i (2) 编译:不同平台采用的汇编语言不一样.编译将高级语言编译成汇编语言. gcc -S test.c -o test.s (3) 汇编:将汇编语言翻译成二进制的目标代码. gcc -c test.c -o test.o (4) 链…
Make命令参数的典型序列如下所示: make [-f makefile文件名][选项][宏定义][目标] 这里用[]括起来的表示是可选的.命令行选项由破折号“–”指明,后面跟选项,如: make –e 如果需要多个选项,可以只使用一个破折号,如: make –kr 也可以每个选项使用一个破折号,如: make –k –r 甚至混合使用也行,如: make –e –kr Make命令本身的命令行选项较多,最为常用的三个是: –k: 如果使用该选项,即使make程序遇到错误也会继续向下运行:如果没…
在Linux的Shell中怎样处理tail -n 10 access.log这样的命令行选项呢?这是被别人问起的一个问题,好好学习了一下,进行总结如下:在bash中,可以用以下三种方式来处理命令行参数,每种方式都有自己的应用场景.1.直接处理,依次对$1,$2,...,$n进行解析,分别手工处理:2.getopts来处理,单个字符选项的情况(如:-n 10 -f file.txt等选项):3.getopt,可以处理单个字符选项,也可以处理长选项long-option(如:--prefix=/ho…
[课程笔记] Linux环境限制 遵循规范,使用现有资源,明确系统限制,增量开发. (1)规范问题 编码的规范,让程序更易读.Linux编码规范. “见着如意”:变量,函数命名等能够让人看到名称就知道大概的用处和功能. 另外各个单词间全用下划线,全部用小写. user_count “层次清楚”:代码各个模块逻辑要清楚,多用子函数,多用空行来间隔. 一般不建议一个函数的代码行数超过80行: (2)库的使用 printf这是一个库函数.加快开发的进度. 头文件:.h,里面是函数及变量的声明.#inc…
VI是Linux/Unix下标配的一个纯字符界面的文本编辑器.由于不支持鼠标功能,也没有图形界面,相关的操作都要通过键盘指令来完成,需要记忆大量命令.因此很多人不大喜欢它,但同时由于键盘的方式往往比鼠标来得快,一旦熟练后用起来是有种非常流畅的感觉的,也有人因此而非常喜欢它. 不管你喜欢也好,不喜欢也好,VI是Linux的标配编辑器,很多时候你也只有这一个编辑器可用,如果要做一个Linux Coder,熟悉VI还是非常有必要的. PS:由于VI的命令非常多,本文主要只介绍一些基础命令.并且就算是这…
1.main函数参数形式 int main(int argc , char *argv[] , char *env[]); //第一个参数argc代表命令行的参数个数 //第二个参数依次指向各个参数,如"ls -l",argv[0]指向"ls",argv[1]指向"-l",argv[2]为NULL //第三个参数为当前进程环境变量列表 2.命令行参数识别 在命令行输入命令时,选项的位置是随意的,如ls -l -a 与ls -a -l的效果是一样的…
argparse模块作为optparse的一个替代被添加到Python2.7.argparse的实现支持一些不易于添加到optparse以及要求向后不兼容API变化的特性,因此以一个新模块添加到标准库. 与optparse相比较 argparse的API类似于optparse,甚至在很多情况下通过更新所使用的类名和方法名,使用argparse作为一个简单的替代.然而,有些地方在添加新特性时不能保持直接兼容性. 你必须视情况决定是否升级已有的程序.如果你已编写了额外的代码以弥补optparse的局…