本文作者:qiaoqingyi

linux编程从入门到精通pdf(linux编程教程)

qiaoqingyi 06-05 110

  在1991年,世界上诞生了一只企鹅,他早于人们所熟知的另一只企鹅(QQ)8年,这个企鹅的名字就叫:Linux。它是一个与UNIX兼容的操作系统,重点是免费、源代码可随意修改、完善、传播。其开发者的初衷就是共同创造一个完美、理想并可以免费使用的操作系统。

  Linux系统应用是大家在学习软件开发、大数据开发、软件测试时必须掌握的技能。小编将通过几篇文章为大家介绍Linux系统,熟悉它的基本应用。

  我们先解一下Linux的概况,以及对Linux有一个初步的感性认识。

什么是Linux?

  Linux是一个以Intel系列CPU为硬件平台,完全免费的UNIX兼容系统,完全适用于个人的PC。Linux的最早起源是在1991年10月5日由一位芬兰的大学生Linux Torvalds写了Linux核心程序的0.02版开始的,但其后的发展却几乎都是由互联网上的Linux社团(Linux Community)互通交流而完成的。Linux不属于任何一家公司或个人,任何人都可以免费取得甚至修改它的源代码(source code)。

  Linux上的大部分软件都是由GNU倡导发展起来的,所以软件通常都会在附着GNU Public License(GPL)的情况下被自由传播。GPL是一种可以使你免费获得自由软件的许可证,因此Linux使用者的使用活动基本不受限制(只要你不将它用于商业目的),而不必像使用微软产品是那样,需要为购买许可证付出高价还要受到系统安装数量的限制。

  目前Linux中国的发行版本(Linux Distribution)主要有Red Hat(红帽子), Slackware, Caldera, Debian, Red Flag(红旗), Blue Point(蓝点), Xteam Linux(冲浪), Happy Linux(幸福Linux), XLinux等若干种,我推荐同学们使用的发行版本是Red Hat和XLinux。

安装Linux的好处

  Linux的核心具有Windows无法比拟的稳定性和高效率,在不使用X Windows的情况下,它占用系统资源较少,可以使一台Intel486摇身一变成为高效工作站。最重要的是,Linux上有公认的C语言世界最好的编译器gcc,如果你想得到一个效率更高的开发环境(并不一定是最友好的,但一定是最强大的),建议一定要好好的熟悉一下Linux。

Linux与Windows异同点

  Windows是图形界面的,Linux类似以前的DOS,是文本界面的,如果你运行了图形界面程序X-WINDOWS后,Linux也能显示图形界面,也有开始菜单、桌面、图标等。

  Windows有MS-DOS方式,在该方式下通过输入DOS命令来操作电脑;而Linux与Windows类似,也有命令方式,Linux启动后如果不执行X-WINDOWS,就会处于命令方式下,必须发命令才能操作电脑。另外Linux上也有很多的应用软件,安装运行了这些软件后,你就可以在Linux上编辑文档、图片,玩游戏、上网、播放多媒体文件等。

Linux的文件系统结构

  Linux的文件系统和MS-Windows的文件系统有很大的不同,Linux只有一个文件树,整个文件系统是以一个树根"/"为起点的,所有的文件和外部设备都以文件的形式挂结在这个文件树上,包括硬盘,软盘,光驱,调制解调器等,这和以"驱动器盘符为基础的MS-Windows系统是大不相同的。Linux的文件结构体现了这个操作系统简洁清析的结构,我们能够接触到的Linux发行版本的根目录大都是以下结构:

  /bin /etc /lost+found /sbin /var /boot /root

  /home /mnt /tmp /dev /lib /proc /usr

  现在将这些目录给大家做一个简要的介绍:

  ? /bin和/sbin

  使用和维护UNIX和Linux系统的大部分基本程序都包含在/bin和/sbin里,这两个目录中之所以包含bin,是因为可执行的程序都是二进制文件(binary files).

  /bin目录通常用来存放用户最常用的基本程序,如:

  login

  Shells

  文件操作实用程序

  系统实用程序

  压缩工具

  /sbin目录通常存放基本的系统和系统维护程序,

  存放在这两个目录中的程序的主要区别是:/sbin中的程序只能由root(管理员)来执行。

  ? /etc

linux编程从入门到精通pdf(linux编程教程)

  这个目录一般用来存放程序所需的整个文件系统的配置文件,其中的一些重要文件如下:

  passwd shadow hosts motd profile shells services

  lilo.conf

  ? /boot

  这个目录下面存放着和系统启动有关系的各种文件,包括系统的引导程序和系统核心部分。

  ? /root

  这是系统管理员(root)的主目录。

  ? /home

  系统中所有用户的主目录都存放在/home中,它包含实际用户(人)的主目录和其他用户的主目录.Linux同UNIX的不同之处是,Linux的root用户的主目录通常是在/root或/home/root,而UNIX通常是在/。

  ? /mnt

  按照约定,像CD-ROM,软盘,Zip盘,或者Jaz这样的可以动介质都应该安装在/mnt目录下,/mnt目录通常包含一些子目录,每个子目录是某种特定设备类型的一个安装点。例如:

  /cdrom /floppy /zip /win ....

  如果我们要使用这些特定设备,我们需要用mount命令从/dev目录中将外部设备挂接过来。

  ? /tmp和/var

  这两个目录用来存放临时文件和经常变动的文件。

  ? /dev

  这是一个非常重要的目录,它存放着各种外部设备的镜像文件,其中有一些内容我们是要牢牢记住的。例如第一个软盘驱动器的名字是fd0;第一个硬盘的名字是hda,硬盘中的第一个分区是hda1,第二个分区是hda2;第一个光盘驱动器的名字是hdc;此外,还用modem和其他外设的名字,在这么多的名字中,我们只需要记住最最常用的那几个外设就可以了。

  ⑨ /usr

  按照约定,这个目录用来存放与系统的用户直接相关的程序或文件,这里面有每一个系统用户的主目录,就是相对于他们的小型"/"。

  ⑩ /proc

  这个目录下面的内容是当前在系统中运行的进程的虚拟镜像,我们在这里可以看到由当前运行的进程号组成的一些目录,还有一个记录当前内存内容的kernel文件。

文件类型

  Linux的文件类型大致可分为五类,而且它支持长文件名,不论是文件还是目录名,最长可以达到256个字节。

  ? 一般性文件

  一般性文件,例如纯文本文件mtv-0.0b4.README,设置文件lilo.conf,记录文件ftp.log等等都是。一般类型的文件在控制台的显示下都没有颜色,系统默认的是白色。

  ? 目录

  可以用cd+目录名进入到这个目录中去,而这个目录在控制台下显示的颜色是蓝色的,非常容易辨认。如果你用ls -l来观看它们,会发现它们的文件属性(共10个字符)的一个字符是d,这表明它是一个目录,而不是其它的东西。

  ? 数据格式的文件(data)

  有些程序在运行过程中,会读取某些特定格式的文件,那些特定格式的文件可以称为数据文件(data file)。举例来说,Linux在用户登入时,都会将登录数据记录在 /var/log/wtmp文件内,该文件是一个数据文件,它能通过last命令读出来。但使用cat时,会读出乱码。因为它是属于一种特殊格式的文件。

  ? 连接文件(link)

  类似Windows下面的快捷方式。第一个属性为 [l],例如 [lrwxrwxrwx]。

  ? 设备与设备文件(device)

  与系统外设及存储等相关的一些文件,通常都集中在 /dev目录。通常又分为两种:块设备文件:就是存储数据以供系统存取的接口设备,简单而言就是硬盘。例如一号硬盘的代码是 /dev/hda1等文件。第一个属性为 [b]。字符设备文件:即串行端口的接口设备,例如键盘、鼠标等等。第一个属性为 [c]。

  Linux系统的入门介绍就到这里,下次小编会为大家带来Linux系统的基本操作命令介绍。

阅读
分享