11:401第3部分文件管理与常用命令3.1Linux基本操作3.2Linux命令3.3Linux文件操作3.4输入/输出重定向11:4023.1Linux基本操作在使用Linux系统前,首先需要了解和掌握一些基本的操作,包括如何登录和退出系统、如何修改口令以及关闭和重启系统。11:4033.1.1登录Linux系统是一个多用户操作系统,系统的每个合法用户都拥有一个用户账号,包括用户名和口令等信息。任何用户在使用Linux系统前必须先登录系统。登录(login)过程就是系统对用户进行认证和授权的过程。登录时,用户须提供用户名和口令。每个Linux系统都有一个特殊的用户,称为超级用户。超级用户的用户名是root。root具有对系统的完全控制权限,非必要时应避免使用root登录。11:4041.终端与控制台终端(terminal)是指用户用来与系统交互的设备,包括显示器、键盘和鼠标。每个用户都需要通过一个终端来使用系统。根据显示模式的不同,终端分为字符终端和图形终端。字符终端只能显示字符界面,接收键盘输入的命令;图形终端可以支持图形界面显示和鼠标操作。根据连接方式的不同,终端又可分为本地终端和远程终端。11:405本地终端是直接与系统相连的终端,也称为控制台(console),是供系统本地用户使用的终端;远程终端指用户通过网络或其他通信方式远程地使用系统时所用的终端,可能是专门的终端机,更多的是PC机终端。1.终端与控制台11:4062.登录方式Linux系统的登录方式可分为控制台登录和远程登录。1)控制台登录系统启动后将在每个启动了的控制台上显示登录界面。Linux允许同一用户在不同的控制台上以相同身份或不同身份多次登录,同时进行几项工作。各个控制台上的交互过程是相互独立的。11:4072)远程登录远程用户可以从远程终端登录到Linux系统上。远程登录的用户可以在自己所在的终端上像本地用户一样与系统交互,发布命令、运行程序并得到显示结果。从PC机上远程登录Linux系统的方法是:使用Windows的telnet或其他虚拟终端软件(putty),通过网络、拨号或串口方式与Linux系统建立通信连接,连通后即可看到Linux系统的登录提示符“login”。11:4083.1.2修改口令用户在初次使用系统时,一般是用超级用户为其设置的初始口令登录。登录后应及时修改口令。此后,为安全起见,用户还应定期修改登录口令。口令应具有一定的长度和复杂度,使其不易被破解。口令还应便于记忆,若忘记口令只能找超级用户重新设置。在桌面环境下,可以在系统菜单中找到修改口令的界面,在字符控制台界面修改口令应使用passwd命令。11:4093.1.3退出退出(logout)就是终止用户与系统的当前交互过程。操作完成后及时应退出系统,即使是暂时离开也应如此。在桌面上可以找到退出系统的按钮或菜单项。在字符控制台界面,用exit命令或在命令提示符后按Ctrl+d键即可退出系统。(注意:可能需要多次使用exit命令或Ctrl+d键直至退出系统。)退出后,系统回到登录界面,用户可以重新登录系统。11:40103.1.4系统的关闭与重启在多用户系统中,关闭和重启系统会影响到所有已登录的用户,因而执行此操作需要有root权限。在桌面环境下关机或重启很简单,只要点击相应的按钮即可。为方便个人应用,Linux系统默认设置为允许登录图形桌面的普通用户关闭和重启系统。在控制台上按Ctrl+Alt+Del键也可以重启系统。11:4011在字符命令界面要使用命令关闭或重启系统。常用的关机命令是:#shutdownnow常用的重启命令是:#reboot在关机命令的执行过程中,系统屏幕上会显示出关机操作的输出信息。要等到关机过程完成后方可切断电源。11:40123.2Linux命令启动Shell的方式有多种,通常的方式是:在字符终端登录,登录成功后Shell将自动启动;Linux系统为用户提供了一套完备的命令,使用这些命令可以有效地完成各种工作。Linux的命令由Shell程序解释执行,所以也常称其为Shell命令。在使用Linux命令前首先要启动Shell程序。11:4013在图形桌面登录,可以选择“应用程序”→“系统工具”→“终端”来打开终端界面,也可以右键单击桌面并从菜单中选择“打开终端”进入字符终端,图3-1,3-2所示为终端界面。图3-111:4014图3-211:4015其中,命令名是命令的名称,表示要执行的操作,通常为小写。3.2.1命令的格式一条Shell命令是由一到多个项组成的命令行,命令各项之间用空格分隔。命令的一般格式如下:命令名[选项1][选项2]…[参数1][参数2]…选项是对命令的特别定义,指出怎么执行这个操作,一般以“-”开始。参数则是要操作的对象或数据。方括号括起的部分表明该项是可选的。11:4016例如:命令行rm-iabcrm是命令名,表示删除文件操作;-i是命令选项,表示删除前要提示用户确认;abc是命令参数,表示要删除的文件的名称。另外,当一个命令带多个选项时,可以只用一个“-”连起来,如rm-i-vabc可以写成rm-ivabc。11:40173.2.2命令的输入与修改Shell命令是通过终端键盘输入的。输入命令时可以使用一些编辑键来修改输入错误,控制命令的执行。11:40183.2.3命令的执行命令输入完成后,就可按Enter键提交给Shell运行。运行结果通常显示在屏幕上。Ctrl+s键暂停滚屏。之后按下任意键即恢复滚屏。Ctrl+c键终止命令的运行。11:40193.2.4命令的分类按照实现方式的不同,Shell命令分为内部命令和外部命令两种。内部命令全部由Shell程序自身提供,通常对应的是比较简单、使用频繁的功能。外部命令由一个个单独的程序实现,完成比较复杂或耗时的功能。11:4020按命令功能分类,Shell命令可以大致分为以下几类:文件、目录操作;文本编辑与处理;备份与压缩;系统监控与管理;网络通信;其他11:40213.2.5简单命令who命令【功能】显示已登录的用户。【格式】who[选项][ami]【选项】-H显示各列的标题。-q显示登录的用户名和用户数。【参数】带有参数ami时,显示自己的登录信息。【说明】显示内容分为4列:用户名、登录的终端名、登录时间和备注。有-q选项时,只输出用户名和用户数。11:4022例3.1who命令用法示例:$who$who-q$whoami$11:4023echo命令【功能】显示命令行中的参数字符串。【格式】echo[选项][字符串]…【选项】-n输出字符串后光标不换行。-e对字符串转义。11:4024例3.2echo命令用法示例:$echoHelloHello$echo-nHelloHello$echo$echoHello\nworldHello\nworld11:4025$echo-ehello\nworldHelloworld$echoHello;echoworldHelloworld11:4026date命令【功能】显示、设置系统日期和时间。【格式】date[选项][+格式]【选项】-s设置时间和日期。-u使用格林威治时间。11:4027【参数】格式是由格式控制字符和其他字符构成的字符串,用于控制输出的格式。当格式字符串中有空格时,要用引号‘’或“”将格式字符串括起来。常用的格式控制字符如下:%r用hh:mm:ssAM/PM(时:分:秒上午/下午)的形式显示12小时制时间。%T用hh:mm:ss(时:分:秒)的形式显示24小时制时间。%a显示星期的缩写,如Sun。【说明】不带选项和格式参数时显示当前日期与本地当前时间。显示格式是:星期月日时间时区年11:4028%A显示星期的全称,如Sunday。%b显示月份的缩写,如Jan。%B显示月份的全称,如January。%m用2位数字显示月份,如02。%d用2位数字显示日期,如27。%D用mm/dd/yy(月/日/年)的形式显示日期,如02/27/08。%y用2位数显示年份,如08。%Y用4位数显示年份,如2008。其他格式控制字符11:4029例3.3date命令用法示例:$dateMonMay2620:04:34CST2008$$date‘+Todayis%D,nowis%r’Todayis05/26/08,nowis08:14:36PM$$date‘+%B%d,%Y’May26,2008$月/日/年的形式显示月份的全称2位数字显示日期4位数字显示年份11:4030cal命令【功能】显示月份和日历。【格式】cal[[月份]年份]【参数】月份是1~12的数字,年份是1~9999的数字。【说明】若带有一个参数,则该参数被解释为年份;若带有两个参数,则第1个参数表示月份,第2个参数表示年份。不带参数时,显示当年当月的日历。11:4031例3.4cal命令用法示例:$cal#显示当年当月的日历$cal22008#显示2008年2月的日历$11:40323.2.6联机帮助1.--help选项许多Linux命令都提供了一个--help选项,执行带有--help选项的命令将显示该命令的帮助信息。例如:date--help将显示date命令的帮助信息。2. man(manual)命令Linux系统配有一个联机手册,每条Linux命令都对应有相关的手册页。手册页是对命令的最详细、最权威的解释,因此是学习和使用Linux命令的必不可少的工具。11:4033man命令【功能】显示联机手册页。【格式】man命令名【说明】在浏览手册页时,用以下按键翻页、查找和退出:PageUp、b向上翻一页。PageDown、Space向下翻一页。↑向上滚一行。↓、Enter向下滚一行。/string在手册页中查找字符串string。n查找下一个字符串。q退出。11:40343. info命令除了联机手册外,Linux系统还提供了大多数命令的超文本形式的联机文档,可用info命令浏览。info命令与man命令的用法类似,但浏览起来更方便。11:40353.3Linux文件操作文件系统是Linux系统的基本组成部分。Linux系统运行所依赖的各种程序和数据都以文件形式存储在磁盘上的文件系统中。文件系统中的所有文件通过目录的形式组织和存放。目录是一种特殊的文件,其内容是该目录下的一组文件(包括子目录)的信息。目录将所有的文件分层分枝地组织在一起,形成文件系统的树型结构。11:4036用户使用Linux系统的最基本的操作就是对文件和目录的操作。与Windows系统相同,Linux系统提供了在图形窗口界面操作文件的便利手段。在Linux系统中,最基本和最有效的操作文件的方法是使用命令。因此用户应该熟练掌握用命令方式操作文件的方法。3.3Linux文件操作11:40373.3.1Linux系统的文件3.3.2Linux目录结构3.3.3常用的目录操作命令3.3.4常用的文件操作命令3.3Linux文件操作11:40383.3.1Linux系统的文件1.文件的命名2.文件名通配符3.Linux文件的扩展名4.文件的类型5.文件的归属关系6.文件的访问权限7.新建文件的默认权限8.文件的其他属性11:40393.3.1Linux系统的文件1.文件的命名Linux文件名的最大长度是255个字符,通常由字母、数字、“.”、“_”和“-”字符组成。以“.”开头的文件名是隐含文件(通常的文件列表不显示)。文件名中不能含有斜杠字符“/”和空字符“\0”,因为它们对Linux内核具有特殊含义,如“/”表示根目录或路径分隔符。文件名中也不应含有空格符、制表符、控制符以及以下字符,;|`“‘$!%&*?\()[]因为它们对Shell具有特殊含义。11:40402.文件名通配符1)模式与通配符模式是对一类事物的一种概括性描述。同样,需要指定具有某种特征的多个文件名时,可以用一个表示文件名的字符串模式来描述。字符串模式由普通字符和一些具有特殊含义的字符组成,这些特殊字符称为通配符(wildca