??Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
??Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。
??严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU 工程各种工具和数据库的操作系统。
??Linux的基本思想有两点:第一,一切都是文件,即系统中的所有都归结为一个文件,包括命令、硬件和软件设备、操作系统、进程等对于操作系统内核而言,都被视为拥有各自特性或类型的文件。至于说Linux是基于Unix的,很大程度上是因为这两者的基本思想十分相近。第二,每个软件都有确定的用途。
2.1shell含义
??首先shell的英文含义是“壳”,是相对于内核来说的,因为它是建立在内核的基础上,面向于用户的一种表现形式。Linux中的shell,是指一个面向用户的命令接口,表现形式就是一个可以由用户录入的界面,这个界面也可以反馈运行信息;Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行 。实际上Shell是一个命令解释器,它解释由用户输入的命令并且把它们送到内核。不仅如此,Shell有自己的编程语言用于对命令的编辑,它允许用户编写由shell命令组成的程序。Shell编程语言具有普通编程语言的很多特点,比如它也有循环结构和分支控制结构等,用这种编程语言编写的Shell程序与其他应用程序具有同样的效果。
2.2shell在Linux中的存在形式
??由于Linux不同于Windows,Linux是内核与界面分离的,它可以脱离图形界面而单独运行,同样也可以在内核的基础上运行图形化的桌面。
??这样,在Linux系统中,就出现了两种shell表现形式,一种是在无图形界面下的终端运行环境下的shell,另一种是桌面上运行的类似Windows 的MS-DOS运行窗口,前者一般简称为终端,后者一般直接称为shell。
2.3shell如何执行用户的指令
??shell有两种执行指令的方式,第一种方法是用户事先编写一个sh脚本文件,内含shell脚本,而后使用shell程序执行该脚本,这种方式,我们习惯称为shell编程。
??第二种形式,则是用户直接在shell界面上执行shell命令,由于shell界面的关系,大家都习惯一行行的书写,很少写出成套的程序来一起执行,所以也称命令行。
3.1运行步骤
??(1)打开shell;
??(2)在命令提示符后输入动作;
??(3)回车。
3.2行提示符含义
??行提示符:[kiosk@foundation0 Desktop]$br/>??kiosk:用户
??@:分隔符
??foundation0:主机短名称
??Desktop:所在系统位置
??$:身份提示符,$表示普通户,#表示超级用户。
3.3命令的组成
??命令??参数??目标
??其中,参数中如果有-s,表示单词的缩写,--size表示单词的全拼。
??开启:rht-vmctl?start?desktop|server
??关闭:rht-vmctl?poweroff?desktop|server
??显示:rht-vmctl?view?desktop|server
??重置:rht-vmctl?reset?desktop|server
5.1linux系统结构
??linux系统是倒树形结构。linux系统一般有四个主要部分,即:内核、shell、文件系统和应用程序。内核、shell和文件系统一起形成了基本的操作系统结构,它们使得用户可以运行程序、管理文件并使用系统。
5.2二级目录的作用
??/bin:二进制文件,系统常规命令。
??/boot:系统启动分区,系统启动时读取的文件。
??/dev:设备文件。
??/etc:大多数配置文件。
??/home:普通用户的家目录。(家目录,登录以后所在的目录)
??/lib:32位函数库。
??/lib64:64位函数库。
??/media:手动临时挂载点。
??/mnt:手动临时挂载点。
??/opt:第三方软件安装位置。
??/proc:进程信息及硬件信息。
??/root:超级用户家目录。
??/run:临时设备的默认挂载点。
??/sbin:系统管理命令。
??/srv:数据。
??/var:数据。
??/sys:内核相关信息。
??/tmp:临时文件。
??/usr:用户相关设定。
6.1建立文件
??touch?file:建立空文件,或修改文件的时间戳。
??touch?file1?file2建立多个空文件。
6.2建立目录
??mkdir ?目录名:建立单层目录。
??mkdir ?-p?一级目录/二级目录/...:建立多层目录。
6.3删除文件
??rm?-f?file:强行删除文件,不提示。
??rm?-fr?dir:强行删除目录本身及里面的内容,不提示。
6.4编辑文件
文件编辑过程:
??(1)在命令提示符后输入vim?file,按回车,进入文件浏览模式,此时不能编辑;
??(2)输入I,进入插入模式,编辑文件;
??(3)编辑完成后,按Esc键退出插入模式;
??(4)输入“:wq”完成文件编辑。w,表示写入,q,表示退出。
6.5查看文件
??cat?file:输出文件所有内容。
??cat?-b?file:输出文件所有内容并加入行号。
??less:分页浏览。
??△|▽:向上|下移动一行。
??pgup|pgdn:向上|下移动一页。
??/关键字:高亮显示关键字,n向下匹配,N向上匹配。
??q:退出。
??tail?-n:显示文件的后n行。
??head?-n:显示文件的前n行。
6.6文件复制
??cp?sourcefile?destfile:文件复制。
??cp?sourcefile1?sourcefile2?destdir/复制多个文件到目录中。
??cp?-r?sourcefile?destdir/:复制目录。
6.7文件移动
??mv?sourcefile?destfile:重命名。
??mv?sourcefile?destdir:将文件移动到指定目录下。
??mv?sourcedir?destdir:移动目录。
??mv?test/?.:将test目录下的所有内容移动到当前目录下,“.”代表当前目录。
6.8文件路径
6.8.1相对路径
emsp;?文件相对当前系统位置的一个名称简写,文件名称忽略了当前路径的值,只有当前在此目录下才可使用,文件名称不以“/”开头,文件名称会自动在字符前加入“pwd”显示的路径。
6.8.2绝对路径
??文件在系统中的真实位置,任何时间都可以精确表示一个文件的名称,文件名称以“/”开头。
6.8.3关于路径的命令
??pwd:显示当前工作目录。
??cd:切换当前工作目录。
??cd?/mnt:切换到/mnt目录中。
??cd?-:进入当前目录之前所在的目录中。
??cd?~student:进入到student用户家目录中。
7.1字符管理
??yy:复制一整行。
??yl:复制一个字符。
??yw:复制一个单词。
??p:粘贴。
??dd:删除一整行。
??dl:删除一个字符。
??dw:删除一个单词。
??cc:剪切一整行。
??cl:剪切一个字符。
??cw:剪切一个单词。
??注意,剪切以后vim会进入插入模式,如果要粘贴,需按<Esc>键退出插入模式,然后粘贴。
??u:撤销。
??ctrl+u:恢复。
7.2字符的批量处理
??ctrl+v:进入可视化模式,在可视化模式中可以批量选择字符并操作。
7.2.1批量添加字符
??(1)把光标移动到要加入字符所在列;
??(2)ctrl+v进入可视化模式;
??(3)选中要加字符所在列;
??(4)按<I>键进入插入模式,并写入要加入的字符;
??(5)按<Esc>键,批量添加结束。
7.2.2字符的批量修改
??:%s/原有字符/修改后字符/g:将文件中的所有原有字符修改为修改后字符。
??:1,5s/原有字符/修改后字符/g:将文件中的1到5行的原有字符修改为修改后字符。
7.2.3同时编辑多个文件
??(1)vim?file1,进入文件file1;
??(2):sq?file2,进入文件file2;
??(3)同时对file1和file2进行编辑。
??注意:光标默认在哪个文件操作就是哪个文件,ctrl+w按完放开,再按上|下可移动光标所在窗口。
7.3vim的退出
7.3.1正常退出
??:q:当文件没有做任何修改时,可用来退出。
??:q!:当文件修改但不想保存修改时时可用来退出。
??:wq:退出后保存。
??:wq!:当文件属于自己或用户为root(超级用户)时用来退出。
7.3.2异常退出
??当vim非正常退出后,会产生.filename.swap文件,当此文件出现,vim工作异常。
??此时会出现六个选项:
??[O]pen?Read-Only:只读打开。
??[E]dit?anyway:放弃未保存数据,进入文件。
??[R]ecover:恢复。
??[D]elete?it:删除.swp文件
??[Q]uit:退出。
??[A]bort:退出。
??用户可根据自己的需求进行选择。
原文:http://blog.51cto.com/13678728/2153376