Linux编程-第1章-Linux系统文件操作课件.pptx

上传人(卖家):三亚风情 文档编号:3372569 上传时间:2022-08-24 格式:PPTX 页数:49 大小:1.45MB
下载 相关 举报
Linux编程-第1章-Linux系统文件操作课件.pptx_第1页
第1页 / 共49页
Linux编程-第1章-Linux系统文件操作课件.pptx_第2页
第2页 / 共49页
Linux编程-第1章-Linux系统文件操作课件.pptx_第3页
第3页 / 共49页
Linux编程-第1章-Linux系统文件操作课件.pptx_第4页
第4页 / 共49页
Linux编程-第1章-Linux系统文件操作课件.pptx_第5页
第5页 / 共49页
点击查看更多>>
资源描述

1、第1讲 Linux系统文件操作本章概述 本章的学习目标主要内容本章概述 本章主要介绍Linux系统基本知识,包括Linux系统简介、文件系统目录结构、文件类型、文件权限、Linux命令格式,以及文件目录的基本操作,为在Linux环境下进行编程设计打下基础。本章的学习目标n了解UNIX与Linux系统的基本特点和发展历程n理解Linux系统目录结构n掌握Linux系统安装、启动、登录方法n掌握Linux文件属性和权限n掌握Linux文件路径概念和通配符含义n掌握常用Linux文件与目录的操作命令使用n掌握Linux文件打包解包方法n理解I/O重定向和管道功能和基本概念主要内容nLinux/Uni

2、x系统简介nLinux目录结构nLinux系统用户界面、命令格式nLinux文件与命令操作n输入输出重定向和管道1.1 UNIX/Linux系统简介(一)UNIX系统简介1.什么是UNIX系统n是一种多用户、多任务、多层次的操作系统,广泛用于金融、教育、科研、军事领域,用于运行核心业务,管理企业关键数据资料、信息n与Windows系列系统相比,具有安全性高、可靠性强、性能高优点,可以一年365天、724小时不停机运行nUNIX系统凝聚了一大批天才计算机科学家和程序员的智慧,结构清晰、功能强大、技术先进,是大学师生研究、学习操作系统原理、计算机系统工作原理首选的实例系统2.UNIX系统诞生n19

3、69年,由Bell Labs(贝尔实验室)Ken Thompson和Dennis Ritchie处于兴趣开发而成,1971年完成版本1n1973年,Dennis Ritchie 创造了C语言,与Ken Thompson一起用C语重写了Unix的第三版内核,使维护和移植变得便利n同时授权给科研机构与企业进一步发展,逐渐形成两个版本线:u加州大学Berkeley分校,1978年发展了研究版本BSD UNIXuAT&T,1983年开发商业版本System V版本4(SVR4),在此基础上早就了IBM AIX和HP UX两个发现版本3.UNIX主要版本nAIX:是IBM基于SVR4开发的一套UNIX操

4、作系统,性能高、安全、可靠性高,广泛用于金融领域。nSolaris:Sun Microsystems1982年推出基于BSD Unix的Sun OS,以后在接口上向SVR4靠拢,新版本称为Solaris,性能高、处理能力强,在高校、科研院所用得多nHP-UX:是惠普公司以SVR4为基础所研发成的类UNIX操作系统。nIRIX:是SGI公司以SVR4与BSD延伸程序为基础所发展成的UNIX操作系统,具有很强的图形处理功能,在游戏设计中广泛使用的三维图形库编程openGL从此而来。4.UNIX系统存在的问题nUnix的不同版本间不兼容,给应用开发带来极大负担n搭建Unix系统的费用非常昂贵。主机、

5、UNIX系统、开发工具、应用软件需分别购买nUnix系统源码不开放,购买要钱,给学习、研究带来不便(二)Linux系统概述1.什么是Linux?n Linux是一种类UNIX操作系统,继承了Unix系统强大的功能和性能,采用与Unix系统兼容的操作命令,学会操作Linux一般就会操作UNIX系统,学会在Linux下开发应用,就会在UNIX下开发应用nLinux系统运行于廉价的PC和大多数计算机系统硬件,开放源码,各种开发软件丰富齐全、免费下载使用,如gcc、java、apache、hadoop、MLLIBnLinux是广大学生学习操作系统原理、计算机系统原理的优秀实例系统nLinux系统由芬兰

6、学生林纳斯1991年开发第1版,经过20多年发展,已经成为一种成熟、优秀的操作系统,已成为今天世界上使用最多的一种UNIX 类操作系统:nLinux可安装在各种计算机硬件设备中,比如个人计算机、大型机、超级计算机、Android手机、平板电脑、路由器,世界上运算最快的10台超级计算机全部运行Linux操作系统2.Linux内核版本nLinux内核是指由林纳斯亲自维护的Linux操作系统核心代码n2001年,Linux 2.4版本内核发布,2003年Linux2.6版本内核发布,使Linux逐渐成为一个成熟的操作系统n常见的Linux内核版本有Linux2.4.20,Linux2.6、Linux

7、3.2、Linux4.6.4等,其中r.x.y:r-主版本号,x-偶数稳定奇数开发,y-错误修补次数3.Linux发行版本nLinux发现版本是厂商将Linux内核与外围实用程序和文档包装,提供安装界面和系统配置、管理工具等,形成发行系统n目前主要发现版本有:uRed Hat Enterprise Linux(RHEL):主要用作服务器uFedora Ubuntu:界面美观、功能强大uCentOS:是Linux服务器最有名最常用的发行版u.中标麒麟(NeoKylin):u普华Linux(i-soft)由于采用相同内核,Linux应用程序在不同版本间可做到二进制代码级兼容练习1.2 Linux系

8、统目录结构一、目录树结构nLinux与所有Unix系统具有大体一致的目录结构n是一颗以”/”为根目录的树,无盘符概念,所有分区的文件挂载在某个目录下n各个目录的取名和文件内容有统一规定,是一种规范n可根据目录名和文件名推断其大概功能/binbinary(二进制)C:WINDOWSsystem32/bootboot/devdevice/etcetcetera(等等)注册表/home C:Documents and Settings/include、/usr/include /lib/usr/liblibrary(库)C:WINDOWSsystem32/lost+found /mntmount/o

9、ptoption/procprocess注册表/root /sbin/usr/sbinsystem binary/selinux secure linux/srv server/tmptemporaryC:WindowsTemp/usrUnix System(User Software)ResourcesC:Program Files/varvariable 二、主要目录说明:三、Linux目录结构设计的好处用户创建的文件、档案全部放在/home目录下,规范、方便管理、可靠性好;可创建专用系统分区,保存Linux系统文件,以只读方式挂载在/usr目录下,安全性好;可创建一个专用分区,保存动态增

10、长的文件档案,以读写方式挂载到/var目录下,不影响其他文件;所有的UNIX和Linux目录结构与上述规范大体相似,同时也方便了人们的学习。练习:1.3 Linux系统安装、启动、登录、用户界面与命令格式一、安装、启动、登录看视频二、三种系统操作界面1.图形界面 2.命令界面 3.编程接口open、read、write、close等,本课程基本上就是学习Linux编程接口三、Linux命令格式1.Linux命令格式$命令名 选项 参数1 参数2 命令名:由小写英文字母构成的字符串,命令功能为英文单词含义,如date、cp、mv、who、ls命令选项:是对命令的特别定义,以“-”开始,指示命令按

11、特定模式执行,产生输出,如 ls-l、ls-an若同时使用多个选项,多个选项可用一个“-”连起来,如ls lan命令选项出现顺序一般没有要求,如ls-l-a 与ls-a l功能相同 gcc hello.c -o hello与gcc -o hello.c hello功能相同功能相同命令参数:提供命令运行的信息,或者是命令执行过程中所使用的文件名,从哪里可以得到输入,以及把输出送到什么地方 如:cp file1 file2 、mv file1 dir1、mkdir dir2练习:2.命令说明(1)命令输出,命令执行成功与否判定n执行成功:输出期望信息,或无任何输出,直接显示命令提示符$n失败:显示

12、出错信息,格式:”命令名:出错描述”n示例:$cd$pwd/home/can$LS bash:LS:command not found$ls -P ls:invalid option-P$ls -l PPls:cannot access PP:No such file or directory(2)命令联机帮助n百度百科nInfo命令,如$info pwdnMan命令,如$man passwd(3)本课命令输入描述说明1.4 Linux文件、目录操作及文件属性、权限n通常普通用户的主要工作是文件档案处理,输入命令文件名运行程序,通过命令从文件读入输入数据,处理后,保存到另一文件。本课程所有实验

13、任务都属于这类工作nLinux系统为每个普通用户在/home目录下创建了一个用户名为目录名的“家”,如用户can的“家”是/home/can,用户guest的“家”是/home/guest;但根用户root的“家”在目录/rootn普通用户通常在其“家”目录下进行文档处理,创建、修改、删除文件档案,不能增删“家”之外其他目录中的文件档案(安全起见)1.4.1 目录路径与目录操作一、绝对路径、工作目录、相对路径每个文件在某个目录之下,要操作或访问某个文件,应在命令或程序中通过路径方式给出文件所在位置。给出文件路径方法有两种:1.绝对路径:给出从根目录开始一直到所要操作文件名、中间以“/”隔开的完

14、整路径。示例:$cat/etc/passwd、$more/home/can/NachOS-4.1/code/test fd=open(/home/can/work/f1/home/can/work/f1,O_RDONLY);fp=fopen(/home/can/work/f1home/can/work/f1,r+);2.工作目录相对路径:为缩短文件路径字符串长度,Linux系统为每个命令窗口(Terminal)和应用进程设置一个工作目录,n工作目录初始设置为用户的“家”,可用命令cd改变n当用户操作工作目录中文件时,仅需在命令中给出文件名,如touch f1n若操作非工作目录下文件,只需给出绝

15、对路径中除工作目录之外的部分。n示例:若当前工作目录为“/home/can”,则文件/home/can/NachOS-4.1/code/test/add.c可用相对路径表示为NachOS-4.1/code/test/add.c,相应命令检视命令简化为catcat NachOS-4.1/code/test/add.c二、几个特殊目录(“.”、”.”、”、“-”)Linux系统定义几个符号来表示一些常用的特殊目录,给命令输入带来方便n“.”:当前工作目录,若工作目录为/home/can,则在文件路径中,“.”等同于/home/cann“.”:上一层目录,若当前目录为/home/can,则“.”表示

16、/homen“-”:前一个工作目录,如当前工作目录为/home/can,执行cd/etc后,“.”表示/etc,而“-”表示/home/can;n“”:表”目前用户”所在的家目录,若但其用户为can,则“”表示/home/can;guest代表 guest家目录“/home/guest”。练习:三、Linux目录操作命令(cd,pwd,mkdir,rmdir,rm)1.cd(变换工作目录)、pwd(显示当前工作目录)ncd(change directory)命令改变当前工作目录,使用pwd(print work directory)命令显示当前工作目录的绝对路径n通常人们喜欢将两个命令联合使用

17、,用cd切换到目标目录,用pwd验证切换到哪里去了。n范例:$pwd/home/can$cd guest$pwd /home/guest$cd$pwd/home/can$cd$cd .$pwd/home$cd -$cd /var/spool/mail$cd ./mqueue思考题2.mkdir(创建目录)、rmdir(删除空目录)、ls(检视目录),rm(删除非空目录)n一般在某个mkdir、rmdir、rm命令后接一个ls(list)命令,列出文件目录,以验证目录创建、目录删除操作是否成功n范例$cd /tmp$pwd /tmp$rm -rf *$ls$mkdir test$ls test$

18、mkdir test1 test/sub test2$ls .test test1 test2 test:Sub$rmdir test1$rmdir test rmdir:failed to remove test1:Directory not empty$rm -rf test$ls test2 3.ls(文件目录检视命令)格式:$ls -aAdfFhilRS 目录名 常用选项:n-a:列出全部的档案(或称文件),连同文件名以“.”开头的隐藏档案(文件)n-A:列出全部的档案,连同隐藏档,但不包括.与.这两个目录,这个选项用得多;n-F:根据档案、目录等信息,给予附加数据结构,例如:*:代表

19、可执行档;/:代表目录;=:代表 socket档案;|:代表 FIFO档案;n-i:列出 inode 位置,而非列出档案属性;n-l:以长格式列出目录内容,包含档案的属性等等数据,这个选项用得多;n-R:连同子目录内容一起列出来;n-i:列出 inode 位置,而非列出档案属性;范例:$cd$ls Desktop Nachos-3.4-for-ubuntu.tar.gz Public$ls -A .bash_history .lesshst Pictures$ls /etc$ls -F Desktop/nachos-3.4/Pictures/fifo1|a.out*test/f1$ls -l

20、total 24708 drwxr-xr-x 2 root root 4096 2012-08-21 17:31 Desktop drwxr-xr-x 2 root root 4096 2012-08-18 23:27 Documents drwxr-xr-x 2 root root 4096 2012-08-18 23:27 Downloads-rw-r-r-1 root root 0 2015-02-01 11:41 f1 prw-r-r-1 root root 0 2015-02-01 11:38 fifo1$ls -i 686757 Desktop 686812 nachos-4.0.

21、tar 807026 Documents 807159 NachOS-4.1.bak$ls -ial683678-rw-1 root root 7428 2014-04-05 15:44.bash_history 686917-rw-r-r-1 root root 3135 2012-08-19 15:07.bashrc 925835 drwx-5 root root 4096 2015-02-01 08:07.cache 678320 drwx-9 root root 4096 2012-10-24 17:55.config1.4.2 文件属性与权限一、一、文件属性文件属性描述描述有9种,可

22、用命令ls l列出文件类型和访问权限位结构二、文件访问权限1.操作权限含义n 对于普通文件、管道和设备等文件来写来说,r权限:该用户能读这个文件的内容,w权限:表示能更改文件内容x权限:能执行这个文件代表的程序或命令n 对于目录文件来说r权限:能列该目录内容,w权限:在该目录中增加或删除文件,x权限:能用cd命令进入该目录n 示例:-rwxr-xr-x 1 can users 1234567 2015-02-01 11:41 hellodrwxr-xr-2 alice users 4096 2015-02-01 12:41 sub三、用文件目录和索引节点(index node)管理文件属性Li

23、nux文件属性分为两部分管理:n文件名保存在文件目录中,n文件的其他属性(文件大小、访问权限、)保存在索引节点(I节点)中,所有文件的I节点放到磁盘分区的特定区域,称为I I节点节点表表n索引节点与文件具有一一对应,若两个文件的索引节点号相同,他们就是同一个文件n创建文件必然创建新的索引节点,为已存在文件创建新名字方法为:”ln 文件名 硬链接文件名”或”cp l文件名 硬链接文件名”练习1.4.3 Linux文件操作命令一、复制、移动与删除文件(cp,rm,mv,ln)nln(link)用于建立硬链接与符号链接,硬连接指向同一索引节点的另一文件名;nmv(move)用于移动文件或目录到一个新

24、的目录位置,也可以用于更名(rename)文件;nrm(remove)用于移除文件,不但可删除文件,还可删除目录。1.复制文件(cp)n命令格式:cp-adfilprsu 源文件(source)目的文件(destination)cp options source1 source2 source3.Directory n常用选项:-f:为强制(force)的意思,若有重复或其它疑问时,不会询问使用者,而强制复制;-i:若目的文件(destination)已经存在时,在覆盖时会先询问确认-l:创建文件的硬连结(hard link),而非复制档案本身;-r:递归持续复制,用于目录复制;-s:复制成为

25、符号连结文件(symbolic link),亦即“快捷方式”文件;n范例1(复制单个文件):将家目录下的.bashrc 复制到/tmp 下,文件名改为bashrc$cd /tmp$cp /.bashrc bashrc$lsn范例2(复制单个文件):将/var/log/wtmp复制到/tmp底下,文件名不变$cd /tmp$cp /var/log/wtmp .$ls -l /var/log/wtmp wtmp -rw-rw-r-1 root utmp 71808 Jul 18 12:46/var/log/wtmp-rw-r-r-1 root root 71808 Jul 18 21:58 wtm

26、pn范例3:(复制整个目录):复制/etc/这个目录下的所有内容到/tmp 底下$cd /tmp$cp /etc/tmpn范例4(建立硬连接、符号链接):将范例一复制的bashrc建立一个硬链接和一个快捷方式$ls -l bashrc$cp -s bashrc bashrc_slink 或ln-s bashrc bashrc_slink$cp -l bashrc bashrc_hlink或ln bashrc bashrc_hlink$ls -l bashrc*n范例5(同时复制多个文件):将家目录的.bashrc 及.bash_history 复制到/tmp底下$cp /.bashrc /.b

27、ash_history /tmp 2.rm(移除档案或目录)n命令格式:#rm-fir 档案或目录n常用选项:-f:就是 force 的意思,强制移除;-i:互动模式,在删除前会询问使用者是否动作-r:递归删除啊!见文件删文件,见目录删目录n范例1:复制一个文件然后删除之$cd /tmp$cp /.bashrc bashrc$rm bashrc n范例2:删除一个不为空的目录$mkdir test$cp /.bashrc test/$rmdir testrmdir:test:Directory not empty$rm -rf test 3.mv(移动档案与目录,或更名)n常用格式:mv-fi

28、u source destination (档案或目录更名)mv options source1 source2 source3.Directory (档案或目录移动)n 常用选项:-f:force 强制的意思,强制直接移动而不询问;-i:若目标档案(destination)已经存在时,就会询问是否覆盖!-u:若目标档案已经存在,且 source 比较新,才会更新(update)n范例1(单个文件移动):复制一档案,建立一目录,将档案移动到目录中$cd /tmp$cp /.bashrc bashrc$mv bashrc mvtest$cd /tmp$cp /.bashrc bashrc$mkd

29、ir mvtest$mv bashrc mvtest n范例2:(目录更名):将刚刚建立的目录mvtest称更名为 mvtest2$mv mvtest mvtest2n范例3:(多文件移动):再建立两个档案,再全部移动到/tmp/mvtest2 中$cp /.bashrc bashrc1$cp /.bashrc bashrc2$mv bashrc1 bashrc2 mvtest2练习二、文件内容查阅(cat,tac,head,tail,more,less,od)1.检视文本文件内容:cat,tac,head,tail,more,less(范例)$cat /etc/passwdroot:x:0:

30、0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh$more /etc/passwdavahi-autoipd:x:103:108:Avahi autoip daemon,:/var/lib/avahi-autoipd:/bin/falseavahi:x:104:109:Avahi mDNS daemon,:/var/run/avahi-daemon:/bin/false-More-(51%)$less /etc/passwdavahi-autoipd:x:103:108:Avahi autoip daemon,:/var/

31、lib/avahi-autoipd:/bin/falseavahi:x:104:109:Avahi mDNS daemon,:/var/run/avahi-daemon:/bin/false2.创建与编辑文件(gedit,touch,dd)gedit:创建和编辑文本文件(如源程序)touch:创建空文件,更新文件修改时间dd:创建指定大小,内容初始化为0的文件(1)gedit$gedit&或$gedit p1.c(2)在/tmp目录下新建一个空文件testtouch$cd /tmp$touch testtouch(3)在/tmp目录下创建一个大小为10MB的文件testdd:$cd /tmp$

32、dd if=/dev/zero of=testdd count=10240 bs=1024$ls -l testdd-rw-r-r-1 root root 0 Jul 19 20:49 testtouch1.4.4 档案属性修改(touch,chmod)n文件其他属性在文件编辑过程中自动修改,文件权限信息通过chmod命令修改,文件所属用户、所属用户组用命令chown和chgrp修改nchmod命令基本格式为:n范例:创建文件f52、f521、f522,将f52权限更改为777,为所有用户添加对f521读写权限,去掉所有用户对f522的写权限练习:思考题1.161)一个Linux文件的八进制数

33、访问权限为755,用ls-l命令显示的文件权限是什么?用ls-l命令显示的文件权限是rw-r-r-,用八进制数表示的权限值是多少?2)写出命令,在当前目录下创建文件f54,将其访问权限设置为664.3)当前目录下某个文件test.sh的权限是rw-r-r-,成功执行命令chmod +x test.sh后,test.sh的权限变成_,用八进制数表示为_。1.4.5使用通配符(*,-,?)一次操作多个文件(目录)*:匹配任何字符串?:匹配任何一个字符1.4.6 档案的压缩与打包(tar命令)一、文件打包和解包n常用格式:$tar 压缩文件 n常用选项:-cvf 打包 -xvf 解包 -czvf 打包后压缩成.gz格式恩及 -zxvf先对.gz文件解压缩,再解包 -cjvf打包并压缩成.bz2格式文件 -xjvf先对.bz2文件节压缩,再解包n范例:在当前目录下创建目录dir5,在其中创建四个文件f1、f2、f3、f4,对该目录打包并压缩成文件dir5.tar.gz,删除该目录,然后解包dir5.gz:2.在Windows主机与Linux虚拟机之间进行档案互传(1)文本复制(2)文件拖放:看视频练习:总结:n即兴总结课后作业:1.命令练习2.实验

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(Linux编程-第1章-Linux系统文件操作课件.pptx)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|