Linux编程 第1章 Linux系统文件操作

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Unix System(User Software)
Resources variable
C:\Windows\Temp C:\Program Files
三、Linux目录结构设计的好处
①用户创建的文件、档案全部放在/home目录下,规范、方 便管理、可靠性好; ②可创建专用系统分区,保存Linux系统文件,以只读方式挂 载在/usr目录下,安全性好; ③可创建一个专用分区,保存动态增长的文件档案,以读写 方式挂载到/var目录下,不影响其他文件; ④所有的UNIX和Linux目录结构与上述规范大体相似,同时 也方便了人们的学习。
$ LS bash: LS: command not found $ ls -P ls: invalid option -P $ ls -l PP ls: cannot access PP: No such file or directory
(2)命令联机帮助 百度百科
Info命令,如$ info pwd Man命令,如$ man passwd

主要内容

Linux/Unix系统简介 Linux目录结构
Linux系统用户界面、命令格式
Linux文件与命令操作 输入输出重定向和管道
1.1 UNIX/Linux系统简介
(一)UNIX系统简介 1. 什么是UNIX系统 是一种多用户、多任务、多层次的操作系统,广泛用于金融、教育、科研、 军事领域,用于运行核心业务,管理企业关键数据资料、信息 与Windows系列系统相比,具有安全性高、可靠性强、性能高优点,可以一 年365天、7×24小时不停机运行 UNIX系统凝聚了一大批天才计算机科学家和程序员的智慧,结构清晰、功能 强大、技术先进,是大学师生研究、学习操作系统原理、计算机系统工作原 理首选的实例系统 2. UNIX系统诞生 1969年, 由Bell Labs(贝尔实验室)Ken Thompson和Dennis Ritchie处于兴趣开 发而成,1971年完成版本1 1973年,Dennis Ritchie 创造了C语言,与Ken Thompson一起用C语重写了 Unix的第三版内核,使维护和移植变得便利 同时授权给科研机构与企业进一步发展,逐渐形成两个版本线:
命令参数:提供命令运行的信息,或者是命令执行过程中所使用的文件名, 从哪里可以得到输入,以及把输出送到什么地方 如:cp file1 file2 、mv file1 dir1、mkdir dir2
练习:
2. 命令说明
(1)命令输出,命令执行成功与否判定 执行成功:输出期望信息,或无任何输出,直接显示命令提示符$ 失败:显示出错信息,格式:”命令名: 出错描述” 示例: $ cd $ pwd /home/can
二、主要目录说明:
/ /bin /boot /dev /etc /home
/include、/usr/include /lib /usr/lib /lost+found
binary(二进制) boot device etcetera (等等)
C:\WINDOWS\system32
注册表 C:\Documents and Settings
加州大学Berkeley分校,1978年发展了研究版本BSD UNIX AT&T, 1983年开发商业版本System V版本4(SVR4),在此基础上早就了IBM AIX和HP UX两个发现版本

3. UNIX主要版本 AIX:是IBM基于SVR4开发的一套UNIX操作系统,性能高、安全、可 靠性高,广泛用于金融领域。 Solaris :Sun Microsystems1982年推出基于BSD Unix的Sun OS,以后 在接口上向SVR4靠拢,新版本称为Solaris,性能高、处理能力强,在 高校、科研院所用得多 HP-UX:是惠普公司以SVR4为基础所研发成的类UNIX操作系统。 IRIX:是SGI公司以SVR4与BSD延伸程序为基础所发展成的UNIX操作 系统,具有很强的图形处理功能,在游戏设计中广泛使用的三维图形 库编程openGL从此而来。
练习:
三、 Linux目录操作命令(cd, pwd, mkdir, rmdir, rm)
第1讲 Linux系统文件操作
本章概述 本章的学习目标 主要内容
本章概述
本章主要介绍Linux系统基本知识,包括Linux系统简介、 文件系统目录结构、文件类型、文件权限、Linux命令格式, 以及文件目录的基本操作,为在Linux环境下进行编程设计打 下基础。
本章的学习目标
了解UNIX与Linux系统的基本特点和发展历程 理解Linux系统目录结构 掌握Linux系统安装、启动、登录方法 掌握Linux文件属性和权限 掌握Linux文件路径概念和通配符含义 掌握常用Linux文件与目录的操作命令使用 掌握Linux文件打包解包方法 理解I/O重定向和管道功能和基本概念

(3) 本课命令输入描述说明
#或$: 命令提示符
斜体部分: 命令串 $ pwd
/home
#开始部分: 命令说明
#显示当前目录路径
命令下行常规字体: 命令输出
1.4 Linux文件、目录操作及文件属性、权限



通常普通用户的主要工作是文件档案处理,输入命令文件名运行程序, 通过命令从文件读入输入数据,处理后,保存到另一文件。本课程所 有实验任务都属于这类工作 Linux系统为每个普通用户在/home目录下创建了一个用户名为目录名 的“家”,如用户can的“家”是/home/can,用户guest的“家”是 /home/guest;但根用户root的“家”在目录/root 普通用户通常在其“家”目录下进行文档处理,创建、修改、删除文 件档案,不能增删“家”之外其他目录中的文件档案(安全起见)
练习:
1.3 Linux系统安装、启动、登录、用户界面与命令格式
一、安装、启动、登录 看视频
二、 三种系统操作界面
1. 图形界面
2. 命令界面
3. 编程接口
open、read、write、close等,本课程基本上就是学习 Linux编程接口
三、Linux命令格式
1. Linux命令格式 $ 命令名 选项 参数1 参数2 …… 命令名:由小写英文字母构成的字符串,命令功能为英文单词含义,如 date、cp、mv、who、ls 命令选项:是对命令的特别定义,以“-”开始,指示命令按特定模式执行, 产生输出,如 ls -l、ls -a 若同时使用多个选项,多个选项可用一个“-”连起来,如ls –la 命令选项出现顺序一般没有要求,如ls -l -a 与ls -a –l功能相同 gcc hello.c -o hello与gcc -o hello.c hello功能相同
library(库) mount option process system binary
C:\WINDOWS\system32
/mnt /opt /proc /rBaidu Nhomakorabeaot /sbin /usr/sbin /selinux /srv /tmp /usr /var
注册表
secure linux server temporary
2. Linux内核版本

Linux内核是指由林纳斯亲自维护的Linux操作系统核心代码 2001年,Linux 2.4版本内核发布,2003年Linux2.6版本内核发布,使 Linux逐渐成为一个成熟的操作系统 常见的Linux内核版本有Linux2.4.20,Linux2.6、Linux3.2、Linux4.6.4 等,其中r.x.y:r-主版本号,x-偶数稳定奇数开发,y-错误修补次数
1.4.1 目录路径与目录操作
一、绝对路径、工作目录、相对路径 每个文件在某个目录之下,要操作或访问某个文件,应在命令或程序中通 过路径方式给出文件所在位置。给出文件路径方法有两种: 1. 绝对路径:给出从根目录开始一直到所要操作文件名、中间以“/”隔 开的完整路径。示例: $ cat /etc/passwd、 $ more /home/can/NachOS-4.1/code/test fd=open("/home/can/work/f1",O_RDONLY); fp=fopen("/home/can/work/f1","r+"); 2. 工作目录相对路径:为缩短文件路径字符串长度, Linux系统为每个命 令窗口(Terminal)和应用进程设置一个工作目录, 工作目录初始设置为用户的“家”,可用命令cd改变 当用户操作工作目录中文件时,仅需在命令中给出文件名,如touch f1 若操作非工作目录下文件,只需给出绝对路径中除工作目录之外的部分。 示例:若当前工作目录为“/home/can”,则文件/home/can/NachOS4.1/code /test/add.c可用相对路径表示为NachOS-4.1/code/test/add.c , 相应命令检视命令简化为cat NachOS-4.1/code/test/add.c

由于采用相同内核,Linux应用程序在不同版本间可做到二进制代码 级兼容
练习
1.2 Linux系统目录结构
一、目录树结构 Linux与所有Unix系 统具有大体一致的目 录结构 是一颗以”/”为根目 录的树,无盘符概念, 所有分区的文件挂载 在某个目录下 各个目录的取名和文 件内容有统一规定, 是一种规范 可根据目录名和文件 名推断其大概功能
4. UNIX系统存在的问题 Unix的不同版本间不兼容,给应用开发带来极大负担 搭建Unix系统的费用非常昂贵。主机、UNIX系统、开发工具、应用软 件需分别购买 Unix系统源码不开放,购买要钱,给学习、研究带来不便
(二) Linux系统概述
1. 什么是Linux? Linux是一种类UNIX操作系统,继承了Unix系统强大的功能和性能, 采用与Unix系统兼容的操作命令,学会操作Linux一般就会操作UNIX系 统,学会在Linux下开发应用,就会在UNIX下开发应用 Linux系统运行于廉价的PC和大多数计算机系统硬件,开放源码,各种 开发软件丰富齐全、免费下载使用,如gcc、java、apache、hadoop、 MLLIB Linux是广大学生学习操作系统原理、计算机系统原理的优秀实例系统 Linux系统由芬兰学生林纳斯1991年开发第1版,经过20多年发展,已 经成为一种成熟、优秀的操作系统,已成为今天世界上使用最多的一 种UNIX 类操作系统: Linux可安装在各种计算机硬件设备中,比如个人计算机、大型机、超 级计算机、Android手机、平板电脑、路由器,世界上运算最快的10台 超级计算机全部运行Linux操作系统
3. Linux发行版本 Linux发现版本是厂商将Linux内核与外围实用程序和文档包装,提供 安装界面和系统配置、管理工具等,形成发行系统 目前主要发现版本有:
Red Hat Enterprise Linux(RHEL):主要用作服务器 Fedora Ubuntu:界面美观、功能强大 CentOS:是Linux服务器最有名最常用的发行版 .中标麒麟(NeoKylin): 普华Linux(i-soft)
二、几个特殊目录(“.”、”..”、”~”、“-”)
Linux系统定义几个符号来表示一些常用的特殊目录,给命令输入带来方 便 “.”:当前工作目录,若工作目录为/home/can,则在文件路径中,“.” 等同于/home/can “..”:上一层目录,若当前目录为/home/can,则“..” 表示/home “-”:前一个工作目录,如当前工作目录为/home/can,执行cd /etc后, “.”表示/etc,而“-” 表示/home/can; “~”:表”目前用户”所在的家目录,若但其用户为can,则“~”表示 /home/can;~guest代表 guest家目录“/home/guest”。
相关文档
最新文档