初学Linux的知识总结
文章目录
一.shell的种类
1.Bourne shell
2.C shell
3.Korn shell
4.Bourne Again shell
二.shell的特点
1.对已有命令进行适当组合,构成新的命令,而组合方式简单,如建立shell脚本。
2.提供文件名扩展字符,使得用单一字符串可以匹配多个文件名,省的输入一长串文件名的麻烦。
3.可以直接使用shell内置命令,而不需要创建新的进程。
4.允许灵活的使用数据流,提供通配符,输入/输出重定向,管道线等机制,方便模式匹配,I/O处理和数据传输。
5.结构化的程序模块,提供顺序、条件、循环等控制流程。
6.提供在后台(&)执行命令的能力。
7.提供可配置的环境,允许用户创建和修改命令,命令提示符和其他系统行为。
8.提供一个高级命令语言,允许用户创建从简单到复杂的程序。(这些shell程序成为shell脚本)
三. 文件类型
1.普通文件
(1)文本文件
(2)数据文件
(3)可执行的二进制程序文件
2.目录文件
(1)ls -ai 查看是否有其他隐含文件
(2)ls - i 隐含文件不再被显示出来
(3)ls - a 文件的I节点不再出现
(4)ls - d 命令只能看到当前目录下的各子目录名
3.设备文件
4.符号链接文件
四.C语言编译过程
1.gcc命令的工作过程
2.流程过程
五.Linux主要目录的内容
1. /
根目录,系统中所有的目录均从根目录开始。
2. /bin
该目录存放了使用者最常见的命令,如bash、bc、cp、date、dd、ls、man、mkdir、vi。
3. /boot
引导核心的程序目录,主要存放Linux Loader(Linux装配程序)LILO使用的各种文件。
4. /dev
包含了所有Linux的外部设备名。
5. /etc
包含了系统管理所需要的配置文件和子目录,它是系统中最重要的目录之一。
(1)HOSTNAME:设定用户节点名。
(2)hosts:设定用户自己的IP与名字的对应表。
(3)services:设定系统的端口号与协议类型和提供的服务。
(4)XF86Config:X Windows 的配置文件。
(5)protocols:设定系统支持的协议,用户也可以自行增加。
(6)fastab:记录开机时马上要安装的文件系统。
(7)mtab:系统在初启时创建的信息文件,里面记载了系统已经安装的文件系统。
(8)ld.so.conf:系统动态链接共享库的路径,应用程序从该文件去查找相应的文件系统。
(9)lilo.conf:初启程序LILO的配置文件,每次更改后一定要重新运行LILO才有效。
(10)group:有一定许可权的用户,包括超级用户,用来设定用户的组名与相关信息。
(11)passwd:系统最重要的用户密码文件。
(12)securtty:设定哪些终端可以让root注册(为了系统安全,可以设定成只有console上的用户才能用root注册。)
6. /home
存放用户主目录的地方。
(1)ftp:供wu-ftpd使用,wu-ftpd提供FTP服务。
(2)提供给HTTP服务(如 WWW)使用。
(3)samba:提供给samba 服务器(类似Microsoft Windows的网上邻居)程序使用。
7. /lib
存放系统最基本的动态链接库,几乎所有的应用程序都需要用这个目录下的共享库。
子目录
(1)modules:包含linux核心支持的所有设备驱动模块,包括对块设备、光盘驱动器、网络适配器、PCMCIA、SCSI、显示适配器等设备的驱动模块和相关的库。
(2)security:包含用于