Linux基础知识

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux基础知识相关的知识,希望对你有一定的参考价值。

Linux基础知识

1.接口

       1)GUI:图形化界面接口gnome是一个可视化的界面,一个初学者最好由这个界面开始使用,由c语言编写;

       2)CLI:命令行界面,当一个linux最小安装的时候就只有这个命令行界面(有不同的软件可供选择如:bash,zsh,sh,csh,ksh,tcsh...),在这个界面下要想操作系统需要输入具有不同功能的不同命令,如同windows下的dos。

2.文件类型

       可分为四类文件,分别是二进制文件、头文件(或称为库文件)、帮助文件、配置文件

       二进制文件又可称为可执行文件,这种文件可以直接在系统中执行在windows中这类文件的扩展名为exe(全称execute)或msi;在linux中扩展名为ELF。

头文件/库文件

              Windows下称为动态链接库(dynamic linked library)

              linux:so(shared object)供程序使用

                     ko(kernel object)供内核使用

帮助文件:使用说明书

配置文件:保存程序运行过程中的变量

3.命令提示符                            

在linux中终端模式下开头的那些字符例如:[[email protected] ~]#叫做命令提示符。其中root代表当前登陆的用户账户名称;localhost为非完整格式的计算机名称 (完整的名称是localhost.localdomain叫做完全限定域名(FQDN));  ~是在执行命令时的当前目录(Currunt Directory),也叫工作目录(Working Directory),当工作目录改变时,这个位置对应的字符会变为当前目录(~符号代表用户的家目录) (pwd命令显示当前工作目录)(cd命令改变工作目录,一个“.”代表当前目录,两个“.”代表当前目录的上级目录,当输入“cd ..”进入当期目录的上级目录);紧跟其后的#号代表着当前登陆的用户的权限,此处权限分两种,#代表超级用户root,$代表普通用户。

4.命令的格式

       commandoptions arguments【parameters】

       命令       选项       对象      

command(命令):想要执行的操作主体,本质就是一个进程,命令可分为内部命令(内建于shell中的命令,是shell的本能操作)和外部命令(通过安装应用程序而得到的命令),在执行命令的时候会在PATH中进行寻找(PATH中没有的命令在执行的时候必须带上路径,在PATH中存在的直接执行就可以),第一次执行通过PATH变量中的路径进行查找,以后只要hash缓存中依然有缓存记录,就不会再查找PATH变量,直接查找缓存。可以使用type命令查看一个命令属于内部还是外部。

options:此次命令执行过程中所使用的特性,分为以下两种

              短选项:

                     -CHAR

                     一次可以写多个,-a-l -d==> -ald

              长选项(不能合并书写):

                     --WORD:--help --list--human-readable

       在这里需要注意的是

                     1.有些选项需要额外的参数

                     2.有些选项可以不用-引导,有些命令的选项一定不能加-

                     3.有些命令的长选项使用一个-

       ARGUMENTS[PARAMETERS]代表着此次命令执行的操作对象,有些命令可以同时有多个参数,但是参数之间必须要用那个空白字分隔。在书写命令的时候command、options、arguments【parameters】之间必须使用空白字符分隔,有些命令在书写时,options、arguments【parameters】位置可以调换,命令中的所有组成部分,严格区分大小写(文件系统规定严格)。

 

5.使用帮助时分为两种,一种是内部命令,一种是外部命令(使用 “type 命令”查看命令的种类)当命令为内部命令时就可以使用“help command”(command为要查看帮助的命令)。当命令为外部命令时有一下几种查看帮助的方式:

       1.使用---help选项(格式为:命令 --help)

       2.man(manual)查看的是整个shell的帮助(格式为:man 命令)

              man共有九章

                     1.用户命令(所有用户可以执行的普通命令)

                     2.系统调用

                     3.C库函数

                     4.设备和特殊文件

                     5.配置文件格式

                     6.游戏相关的帮助信息

                     7.杂项

                     8.管理类命令(只有root能够执行的命令)

                     9.内核相关

              每一个man手册中都有很多字段:

                     NAME:程序的名称以及相关的功能简介

                     SYNOPSIS:命令使用的语法格式

                     DESCRIPTION:程序的详细描述信息

                     OPTIONS:选项的用法以及含义的详细说明

                     AUTHOR:程序的作者信息

                     REPORTINGBUGS:报告程序中所包含的BUG的方式

                     EXAMPLES:命令的使用范例

                     SEEALSO:额外的参考内容

                     FILES:与该程序相关的其他文件,如配置文件等

       3.infocommand:获得命令的在线帮助文档

       4.有很多的程序会有自带的帮助文档:

              /user/share/doc/APP_NAME-VERISION/

              README:程序的相关信息

              INSTALL:程序的安装信息

              CHANGES:程序迭代更新的历程的相关信息

       5.相关网站站点中的文档信息

              wiki

              FAQ

       6.程序的发行方的官方站点

       7.搜索引擎

       8.参考书籍:

6. 在帮助的说明中会有以下几种说明符号

1.[]中括号代表可省略

       2....代表可更多

       3.<>尖括号代表必须写

       4.a|b|c多选一

 

7.几种常见的命令

       hostname:显示主机名称

       su– 一个用户名:更换用户

       echo$SHELL:显示当前接口类型

       cat/etc/shells:显示可支持的shell类型

       更换shell直接输入shell名字

       type一个命令:显示命令是哪个种类(内/外)

       man一个命令:显示命令的帮助

       shutdown:关机或者重启

       useradd:添加账户

touch /abc  在根目录里创建abc

touch abc  在当前目录里创建abc

pwd 打印当前工作目录

一个命令可以有好几种不同的功能,可以使用帮助查看具体的功能

 

8.linux的哲学思想:

       1.一切皆文件

              linux把几乎所有的资源都抽象为文件的形式,甚至连硬件、网络通信使用的套接字以及管道都如此

              文件:一组有边界的位于存储设备中的流式数据(windows、linux)

       2.由众多的功能单一的小程序组成,却可以诗选复杂任务

              功能单一:每一个小程序只做一件事,并且要做好

              复杂任务:尽可能完美的组织多个小程序,让其功能发挥到极致

       3.尽量避免与用户进行直接交互,易于以编程的方式实现自动化任务实施

       4.使用纯文本文件保存程序的配置信息

 

9. 文件体统

       /:原初起点,在linux中/就是最开始的那个文件

       元数据描述文件的属性

       数据:文件的内容

       在文件系统中,基于文件名引用那个文件,按名来进行存取。在文件系统中,对于文件名有一系列的规定

       1.文件名不能包含“/”字符

              “/”表示根文件系统

              “/”表示路径分隔符

       2.文件名的长度不能超过256字符

       3.在同一个位置中,文件名不能重复

       4.文件名要求严格区分大小写

 

       使用路径的概念来表示文件的具体位置,路径就是定位一个文件所在的位置时,所必需经过的目录的层次结构

       路径的描述方式分为两种:

              绝对路径:一切从“/”开始查找的路径

              相对路径:从工作目录(当前目录)开始查找的路径

       注意:当书写目录时,如果顺路就用相对路径,如果不顺路就用绝对路径(在目标文件的绝对路径中是否包含当前的目录称为顺路)。任何一个路径都可以分为两部分(目录名/基名)

       1.文件基名(文件本来的名字):base

       2.文件目录名(文件在什么目录下):dirname

家目录:每个用户登陆系统时的当前目录,也是每个用户的起始目录(如root目录或者home下的其他名字的目录)

 

10.linux中一些基本的文件夹的功能

/:根目录

       bin:普通用户可以执行的普通操作命令

       boot:启动|引导操作系统启动的静态文件,包括:引导程序,内核,initramfs等

       dev:device 设备

              块设备:能够实现数据存放的设备

              字符设备:能够数据传输和数据处理的设备,顺序访问

       etc:存放着主机专用的系统配置文件

       home:普通用户的家目录的根

       lib、lib64:存放共享库文件的目录,内核的模块

       media:可移动设备的挂载点

       mnt:临时的文件系统的挂载点

       opt:第三方应用程序安装目录

       root:超级用户root的家目录

       sbin:存放那些只有超级用户root能够运行的管理类命令

       srv:存放由系统提供的各种服务数据

       tmp:templerate,临时文件目录,每隔30天自动清除该目录中30日之内没有访问的数据

       usr:linux系统的第二个根,几乎所有第三方应用程序安在此目录

              usr/local是第三层根,主要用于编译安装第三方应用程序

              usr/src存放应用程序源代码

       var:可变化的数据,类似数据库

       伪文件系统(管理内存中的数据):

              proc(process):进程

              syssystem:系统

11.linux中的文件类型的种类

       根据颜色进行分类:

              黑或者白:普通的文本文件

              绿色:可执行文件

              黄色:设备文件

              红色:包文件(压缩包、归档包、软件包)

              深蓝色:目录文件

              天蓝色:符号连接文件,相当于windows的快捷方式

              紫色或者粉色:套接字文件用于网络传输

              棕色:管道文件(进程通信使用)

       根据标记进行分类(ls -l命令下的第一个字母):

              -:文本文件

              b:块设备文件

              c:字符设备文件

              d:目录文件

              l:链接文件

              p:管道文件

              s:套接字文件

       使用file命令可查看文件类型

 

以上是关于Linux基础知识的主要内容,如果未能解决你的问题,请参考以下文章

linux学习之八---Linux进程基础知识

编程基础 linux基础入门--linux为何物?

Linux基础知识--命令的基础知识

Linux基础知识

2017-10-10Linux基础知识基础命令

linux基础知识的总结