资源描述
嵌入式Linux应用编程,北京博创兴业科技有限公司,Linux开发基础知识(一),主讲人:张笑天,zhangxt_,第一节 认识Linux操作系统,什么是Linux操作系统 Linux是专门为个人计算机设计的操作系统,它最早由Linus Torvalds设计。 Linux是一套可以在PC机上运行的类似UNIX的操作系统,Linux操作系统的优势,Linux作为自由软件的优势 免费公开的源代码 自由修改、复制以及发布 相比于其它操作系统的优势 Linux是UNIX的完整实现 真正的多任务多用户 具有强大的网络功能 完整的UNIX开发平台,Linux的具体定义,一般概念: Linux内核 Linux系统 Li nux发行版 严格意义: 由Linus Torvalds维护的并发布的内核。它的代码基只包括内核而不包括其它方面的应用。,一般Linux系统构架,Linux系统入门,认识Linux操作系统 Linux文件和目录结构 Linux常用命令 Shell 简介 网络服务简介,Linux下的文件类型,普通文件 目录文件 连接文件 设备文件,普通文件,系统文件 .conf .lock .rpm 编程和脚本文件 .c .cpp .h .o .pl .py .so .sh .tcl 文件格式 .au .gif .html/.htm .jpg .pdf .png .ps .txt .wav .xpm 压缩以及归档文件 .bz2 .gz .tar .tbz .tgz .zip,目录文件 目录中包含文件以及下级子目录,但目录也文件。这个文件中记录了包含在它中的文件和子目录的名称与它所处的地址。 目录文件中记录文件的名字,文件本身的记录不包含文件名,对文件名进行的更改,实际是修改目录文件中的一条文件记录 连接文件 连接是Linux中比较特殊而非常有用的一种文件,类似于Windows中的快捷方式,它本身不包含任何内容,它指向别的文件或目录,设备文件 Linux下所有的设备都是通过文件来表示的,所有的设备文件都存放在/dev目录下,设备文件的文件名就是设备名 设备文件的种类 块设备文件:/dev/hda1,这些设备以块为最小单位。 字符设备: /dev/ttyS0,字符设备按顺序一个一个传递字符 网络接口:访问网络接口的方法是给它们分配一个惟一的名字(比如 eth0),但这个名字在文件系统中不存在对应的节点项 文件名通常都是尾部带有设备编号数字的缩写名称。,Linux下的文件详细信息,-rw-r-r- 1 root root 15228 2003-01-25 a2ps.cfg -rw-r-r- 1 root root 2562 2003-01-25 a2ps-site.cfg -rw-r-r- 1 root root 47 12月 26 23:39 adjtime drwxr-xr-x 2 root root 4096 2005-05-16 aep -rw-r-r- 1 root root 688 2003-02-04 aep.conf,文件类型,文件权限,链接个数,文件属主名,用户分组名,文件长度,文件上次被修改的时间和日期,文件名,Linux下的目录结构,Linux系统入门,认识Linux操作系统 Linux文件和目录结构 Linux常用命令 Shell 简介 网络服务简介,第三节 Linux常用命令,如何获取帮助信息 使用man命令查看手册 权限:所有用户 使用方法:man 查找内容 说明:打印出需要查找帮助内容的手册页信息 使用“ - help”或“- help”参数 权限:所有用户 使用方法:命令 -help 说明:打印出需要查找帮助命令的帮助信息,根据命令不同可能采用不同的参数“-help”或“-help”,浏览目录常用命令,ls 命令 权限:所有用户 使用方法:ls 选项. 文件. 说明:列出当前工作子目录(默认)中的文件及子目录清单 常用参数: -a 显示所有文件及目录(包括隐藏文件) -l 显示文件的详细信息 -h 以容易理解的方式打印文件大小(1k 32M 2G) -t 将文件按建立的先后次序列出 -F 在列出的文件名称后加一个符号(可执行文件“*”,目录“/”) 应用示例: zxtBC home$ ls -lh,浏览目录常用命令,cd 命令 权限:所有用户 使用方法:cd 目标路径 说明:变换工作目录到目标路径,其中目标路径可以是绝对路径也可以是现对路径。目标路径名可以缺省,若缺省则变换至使用者的home directory(用户登录子目录)。 常用参数: :home directory . : 当前目录 . . : 当前目录的上一层目录 - :返回切换目录后的前一个目录 应用示例: zxtBC home$ cd /home/zxt/up-netarm2410 zxtBC home$ cd ././,浏览目录常用命令,pwd 命令 权限:所有用户 使用方法:pwd 说明:显示用户当前工作子目录的完整路径 应用示例: zxtBC home$ pwd dir 命令 权限:所有用户 使用方法:dir 路径 文件名 说明:功能于ls命令类似,阅读常用命令,cat 命令 权限:所有用户 使用方法:cat 参数 文件名 说明:把文件串连接后输出到基本输出(或另一个文件) 常用参数: -n或-number:由1开始对所有输出行数编号 -b或-number-nonblank:与-n类似,只是不对空白行编号 应用示例: zxtBC home$ cat n textfile1 textfile2 zxtBC home$ cat text1 text2 text3,阅读常用命令,more 命令 权限:所有用户 使用方法:more 参数 文件名 说明:类似cat,但它可以分页显示,适合显示长文件清单或文本内容,最基本的指令就是按空格换页,按回车下一行,按b键返回上一页。 常用参数: - num :一次显示的行数 -d :在屏幕最下方显示提示信息 + num:从第num行开始显示应用示例 应用示例: zxtBC home$ more textfile,阅读常用命令,less 命令 权限:所有用户 使用方法:less 参数 文件名 说明:与more命令功能类似,可以用来浏览文字文件的内容,less允许往回卷动已浏览过的部分。Less不会一开始就读入整个文件,所以在打开文件时,会比一般的文本编辑器(vi)快。 应用示例: zxtBC home$ less textfile,查找常用命令,find 命令 权限:所有用户 使用方法:find 路径 参数 查找相关内容 说明:对某个特定文件、某些特定文件和某种类型的文件进行检索,可以根据名字、类型、文件属主以及上次修改时间来检索 常用参数: - name:检索文件名中包含查找内容字符串的文件 - type: 检索相应类型的文件(d、c 、l等) - user:检索创建用户为查找内容的文件 应用示例: zxtBC home$ find /etc/ -type c zxtBC home$ find . name ex,目录操作常用命令,mkdir 命令 权限:所有用户 使用方法:mkdir 子目录或子目录完整路径 说明:建立一个新的子目录,使用子目录的路径作为参数 应用示例: zxtBC home$ mkdir /home/zxt/temp rmdir 命令 权限:当前目录有适当权限的所有者 使用方法:rmdir 参数 子目录或子目录完整路径 说明:删除空的目录 应用示例: zxtBC home$ rmdir /home/zxt/temp,文件操作常用命令,rm 命令 权限:当前文件有适当权限的所有者 使用方法:rm 参数 文件名或目录 说明:删除文件以及 目录 常用参数: - i:删除前逐一询问确定 - f: 即时原文件为只读也强制删除,并不询问确定 - r:同时删除该目录层下的所有目录以及文件 应用示例: zxtBC home$ rm textfile zxtBC home$ rm rf /home/zxt/temp,文件操作常用命令,mv 命令 权限:当前文件有适当权限的所有者 使用方法:mv 参数 原文件或目录 目标文件或目录 说明:将一个文件移至另一个文件,或将多个文件移动至另一个目录,也可以将一个目录移动至另一个目录 常用参数: - i:若目的位置已有同名文件,则询问是否覆盖旧文件 应用示例: zxtBC home$ mv text1 text2 zxtBC home$ mv i *.c /home/zxt/temp,文件操作常用命令,cp 命令 权限:所有用户 使用方法:cp 参数 原文件或目录 目标文件或目录 说明:将一个文件复制到另一个文件,或将数个文件复制到另一个目录中,也可以将一个目录复制到另一个目录 常用参数: - a:尽可能将文件的状态、权限等信息全部复制 - f: 若目的地址有同名文件,则将已有的文件删除再进行复制 - r:若原目录中包含子目录,则原目录中的文件及子目录也依次 复制到目的地址中 应用示例: zxtBC home$ cp text1 text2 zxtBC home$ cp arf up-tech/ /temp,压缩及解压缩命令,tar 命令 权限:所有用户 使用方法:tar 参数 归档文件名 原文件或目录 说明:广泛用于建立归档文档,这个命令将文件及目录复制到归档文件中,原文件并不会有被删除的危险。同时还可通过参数调用相应的压缩工具进行压缩及解压缩 常用参数: - c:创建文档,而不运行浏览现有文档或取出文档中的文件 - f:表示存档到文件而非磁盘 - v:显示每个复制文件的名称 - x:解压缩 - z:使用gzip或ungzip - j :使用bzip 应用示例: zxtBC home$ tar cvjf temp.tar.bz2 temp/ zxtBC home$ tar xvjf temp.tar.bz2,挂载文件系统命令,mount 命令 权限:所有用户 使用方法:mount 参数 设备 挂载目录(挂载点) 说明:在命令行中使用mount命令挂载文件系统 常用参数: - t :指定挂载文件系统类型 应用示例:,adfs, affs, autofs, coda, coherent, cramfs, devpts, efs, ext, ext2, ext3, hfs, hpfs, iso9660, jfs, minix, msdos, ncpfs,nfs, ntfs, proc, qnx4, ramfs, reiserfs, romfs, smbfs, sysv,tmpfs, udf, ufs, umsdos, vfat, xenix, xfs, xiafs.,#mount -t nfs 192.168.0.43:/home/zxt /mnt/nfs/,网络常用命令,ifconfig 命令 权限:所有用户 使用方法:ifconfig 接口 ifconfig 接口 参数或地址 说明: 用来配置网络接口 应用示例:,# ifconfig eth0 192.168.0.102,Linux系统入门,认识Linux操作系统 Linux文件和目录结构 Linux常用命令 Shell 简介 网络服务简介,什么是shell ?,shell是用户与Linux内核之间的接口程序 shell是一个命令解释器(command-language interpreter),拥有内建的shell命令,此外它还可以被其它有效的Linux实用和应用程序(utilities and application programs)所调用。 shell与内核之间的关系,我们再命令行中输入的每一个命令都是由shell先解释然后再传给内核。它们之间的关系很类似于MS-DOS中用户与之间的关系,差别就是远远没有shell强大。,常用的shell,Bourne shell (sh)- Steven Bourne C shell (csh)- Bill Joy Korn shell (ksh)- Dave Korn tcsh (csh的扩展) Public Domain Korn shell (pdksh,ksh的扩展) Bourne Again shell (bash,sh的扩展),shell的主要功能及特点,命令行解释 保留字 通配符 访问、处理命令 文件处理:i/o重定向及管道 命令替换 变量维护 环境控制 Shell编程,shell与用户进程之间的关系,Linux系统入门,认识Linux操作系统 Linux文件和目录结构 Linux常用命令 Shell 简介 网络服务简介,Linux下常用的网络协议与服务,Telnet程序 FTP(File Transfer Protocol)文件传输协议 NFS(Network File System)网络文件系统 TFTP(Trivial File Transfer Protocol)简单文件传输协议,Telnet程序,Telnet是一个执行远程登陆的工具 Telnet可以用过Internet连接你所指定的计算机,一旦连接成功,Telnet就为你与另一个台计算机的中介而工作。你用键盘敲入的任何信息都会传给远端的另一台计算机,而另一台计算机上显示的任何东西都会传送到你的计算机并在屏幕上显示出来。 Telnet主要用在登陆BBS、Archie这样的服务系统上,但由于其自身安全性不高,逐渐被ssh所取代。,FTP协议,FTP(File Transfer Protocol)文件传输协议 文件传输是指将一台计算机上的文件传输到另一台计算机上,传输的文件可以是电子报表、声音文件、视频文件、编译后的程序等等。 用户使用FTP并不是真正的登陆到想要存取文件的计算机上并成为计算机上的用户,NFS服务,NFS服务是由Sun MicroSystem公司开发的一套协议 NFS是一格RPC服务,它使我们可以达到文件的共享,能够在多台计算机上透明的访问彼此间的目录。它们使用分布式文件系统方案来实现,在UNIX工作站和Linux系统下比较常见。 NFS使用mount命令来将远程的文件系统挂载到本机上的文件系统上,用户在使用时不会感觉到两者有任何差异。,TFTP协议,TFTP(Trivial File Transfer Protocol,简单文件传输协议)是TCP/IP协议族中的一个用来在客户机与服务器之间进行简单文件传输的协议,提供不复杂、开销不大的文件传输服务。TFTP承载在UDP上,提供不可靠的数据流传输服务,不提供存取授权与认证机制,使用超时重传方式来保证数据的到达。与FTP相比,TFTP的大小要小的多。,感谢您参加博创嵌入式教学培训!,
展开阅读全文