linux的常用命令及开发工具主要内容常用命令常用工具vi(m)编辑器Gcc编译器Makefilegdb调试minicom串口调试器常用命令Linux文件、目录的操作命令Linux备份与压缩命令Linux其它命令Linux文件、目录的操作命令cp[选项]源文件或目录目标文件或目录:复制文件或目录。cpfile1.txtfile2.txtmv[选项]源文件或目录目标文件或目录:移动目录或文件,可将文件或目录更名。mvaaa.txt..;将文件aaa.txt移到上级目录中。mvaaa.txtbbb.txt;将文件aaa.txt更名为bbb.txtrm[选项]文件名|目录名rm–rfilename.txtfind目录列表[选项]:find.-namemain.cLinux文件、目录的操作命令文件系统的挂载与删除mount[-参数][设备名称][装载点]mount-tiso9660/dev/cdrom/mnt/cdrommount-tvfat/dev/hda1/mnt/win_cmount-tvfat/dev/sda1/mnt/uumount[-参数][设备名称][装载点]umount/mnt/ucd目录名:进入目录ls[-参数]:显示当前目录下的所有文件和目录。ls–lamkdir目录名:创建目录pwd:显示当前目录路径。注:LINUX下的文件和目录是区分大小写的。Linux备份与压缩命令tar[主选项+辅选项]文件或者目录tarczvfusr.tar.gz/home:压缩文件tarxzvfusr.tar.gz:解压缩文件gzip[选项]压缩(解压缩)的文件名gzipfilegzip–dfile.gz总结1、以.gz结尾的为压缩文件,用命令:gzip-dfilename来解压,得到的文件在当前目录中,但已没有了.gz。2、以.tar结尾的为归档文件,用命令:tarxvffilename来展开,生成的文件与源文件在同一目录中,只是少了.tar。3、以.tar.gz结尾的文件最常见,可直接用命令:gzip-cdfilename|tarxfv来解开。Linux其它命令帮助命令mancommand用来察看command的使用文档。修改权限chmod755file1–读2–写4–执行修改pc机ipifconfigeth0192.168.2.32up常用工具vi(m)编辑器Gcc编译器Makefilegdb调试minicom串口调试器vi(m)编辑器vi是Linux/UNIX世界里极为普遍的全屏幕文本编辑器,几乎任何一台Linux/UNIX机器都会提供这个软件。这种编辑器的一大好处是所有的命令按键都在手指范围内,手不必离开主键盘就可输入所有命令。$vifilename新建文档或开启旧文档。vi有3种状态,即可视命令模式、冒号命令模式及文本编辑模式。vi的编辑状态可视命令模式:一般当进入vi时,会首先进入可视命令方式,这是Vi的启动默认模式。冒号命令方式:所有命令都要以“:”开始,所输入的字符系统均作命令来处理,如输入“:q”代表退出,“:w”表示存盘。文本编辑模式:在可视命令模式下,输入”i”即可进入编辑模式,进行编写、修改代码等操作。常用的vim命令光标命令:(可视模式下)k、j、h、l—上下左右光标移动命令。nG—调转命令,n为行数,该命令使光标立即跳到指定的行数。Ctrl+G—光标所在位置的行数和列数。编辑命令:(可视模式下)i—从可视命令模式进入文本编辑模式。esc键—放回到可视命令模式。查找命令:(可视模式下)/string、?String—从光标所在的行向前向后查找相应的字符串。拷贝复制命令:(可视模式下)yy—拷贝一行到剪切板p—粘贴剪切板的内容在冒号命令方式下:yn,表示从当前光标处开始复制n行内容到剪切板。将光标移到相应的位置,按p即可粘贴剪切板的内容。常用的vim命令编辑命令(可视模式下)dd—删除整行命令u—恢复前一次的删除动作冒号命令方式命令:q—退出命令:w—存档:wq—存档退出:q!--放弃任何改动,强行退出gcc编译器Linux系统下的Gcc(GNUCCompiler)是GNU推出的功能强大、性能优越的多平台编译器,是GNU的代表作品之一。gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。Gcc编译器能将C、C++语言源程序、汇程式化序和目标程序编译、连接成可执行文件,如果没有给出可执行文件的名字,gcc将生成一个名为a.out的文件。在Linux系统中,可执行文件没有统一的后缀,系统从文件的属性来区分可执行文件和不可执行文件。gcc规则gcc则通过后缀来区别输入文件的类别,gcc所遵循的部分约定规则如下:.c为后缀的文件,C语言源代码文件;.a为后缀的文件,是由目标文件构成的档案库文件;.cc或.cxx为后缀的文件,是C++源代码文件;.h为后缀的文件,是程序所包含的头文件;.o为后缀的文件,是编译后的目标文件;.s为后缀的文件,是汇编语言源代码文件;gcc用法gcc最基本的用法是∶gcc[options][filenames]其中options就是编译器所需要的参数,filenames给出相关的文件名称。举例:gcc–cmain.cgcc–csubr.cgcc–I/usr/include–oprogmain.osubr.ogcc参数说明-c只编译并生成目标文件。-oFILE生成指定的输出文件FILE,没有指定FILE,默认输出文件为a.out。-O优化生成代码。-w不生成任何警告信息。-Wall生成所有警告信息。-g生成调试信息。GNU调试器可利用该信息。-lLIBRARY连接时搜索指定的函数库LIBRARY。gcc编译过程预处理这一步需要分析各种命令,如:#define、#include、#ifdef等。gcc将调用cpp程序来进行预处理。编译这一步将根据输入文件产生汇编语言,由于通常是立即调用汇编程序,所以其输出一般不保存在文件中。汇编这一步将汇编语言用作输入,产生具有.o扩展名的目标文件。连接在这一步,各目标文件.o被放在可执行文件的适当位置上。gcc调用连接程序ld来完成最终的任务。MakefileMakefile带来的好处就是--“自动化编译”,一旦写好,就只需一个make命令就可以实现整个工程完全自动化编译,极大的提高了软件开发的效率。有效文件名:GUNMakeFile、Makefile和makefile实例分析#Themakefileisfortest.objects=main.osubr.oexec=progall:$(objects)gcc–o$(exec)$(objects)main.o:test1.cgcc–cmain.csubr.o:test2.cgcc–csubr.cclean:rm–r$(exec)$(objects)注意:蓝色的每行,必须从每行的起始处开始,不能有空格。红色标注的每行,起始处不是空格,是“Tab”键。注释均以’#’开始简化makefile利用makefile的隐含规则简化########objects=main.osubr.oexec=progall:$(objects)gcc–o$(exec)$(objects)clean:rm–r$(exec)$(objects)简化makefile(2)利用内部变量进行简化objects=main.osubr.oexec=progall:$(objects)gcc–o$@$^clean:rm–r$(exec)$(objects)$@扩展成当前规则的目的文件名,$扩展成依靠列表中的第一个依靠文件$^扩展成整个依靠的列表gdbLinux包含了一个叫gdb的GNU调试程序.gdb是一个用来调试C和C++程序的强力调试器.它使你能在程序运行时观察程序的内部结构和内存的使用情况.Gdb功能非常强大:可监视程序中变量的值。可设置断点以使程序在指定的代码行上停止执行。支持单步执行等gdb的常用命令list显示源代码段。run运行程序。breakNUM在指定的行上设置断点。Watchexpress参看变量或表达式的值。continue继续执行正在调试的程序。该命令用在程序由于处理信号或断点而导致停止运行时。next单步执行,但不进入函数。Step单步执行,进入函数。infobreak显示当前断点清单,包括到达断点处的次数等。kill终止正被调试的程序。