linux_新手指南
- 格式:doc
- 大小:699.00 KB
- 文档页数:60
UNIX 新手指南,第1部分: 文件维护工具系统管理员可以在命令行中使用各种程序来维护UNIX® 系统中的文件。
在本教程中,您将试验使用一些命令,如cd、cp 和tar,以便在命令行中导航UNIX 文件系统并处理文件和目录。
cd 命令用来更改目录,cp 命令用来复制文件或目录,而tar 可以快速地对文件进行存档。
您还将了解如何处理文件权限并执行简单的输入/输出。
1.开始之前了解本教程中包含的内容以及如何最好地利用本教程。
1.1.关于本系列这个由四部分组成的文章系列将从用户的角度出发,介绍UNIX® 的基本知识。
对于很久没有使用类UNIX 操作系统的用户来说,这个初始的教程是个很好的温习。
对于具有Windows® 使用经验的新的UNIX 用户来说,它也很有价值,因为其中引用了Windows,并将两者进行了比较。
本系列中后续的教程将详细介绍一些特定的应用程序(例如,vi),并讨论Shell 的诀窍与技巧。
1.2.关于本教程系统管理员可以在命令行中使用各种程序来维护UNIX 系统中的文件。
除了这里演示的基本程序外,还有更多的程序可供使用,但这里介绍的程序都是UNIX 系统中的基本组成部分。
您可以使用mv命令对文件和目录进行移动和重命名。
cp 命令可以用来复制一个或多个文件或目录。
有一个称为tar 的应用程序,它可以快速地将文件聚集在一起形成一个存档。
本教程还将讨论如何遍历文件系统、处理文件权限和简单的输入/输出,以便为新的UNIX 用户顺利地使用系统而打下基础。
1.3.目标本教程的目标是让新的UNIX 用户能够熟练地使用命令行遍历系统和处理文件。
它重点关注于用来操作文件的一些常用命令行实用程序,但同时也讨论了关于文件权限和输入/输出的内容,以便向您完整地介绍日常工作中需要使用的命令。
1.4.先决条件要学习本教程,您需要对计算机和文件有基本的认识,但并不一定需要具备使用类UNIX 操作系统的经验。
您应该知道什么是目录(文件夹)和文件,并能够使用您的帐户登录到类UNIX 操作系统中。
如果您对DOS 或Microsoft® Windows 命令行比较熟悉,那么您将发现其中一些相似之处,但对于从未使用过这些命令行的用户来说,也可以顺利地学习本教程。
1.5.系统要求在任何运行类UNIX 操作系统的计算机上拥有您自己的帐户,这是完成本教程所需的要求。
类UNIX 操作系统包括IBM AIX® 操作系统、Linux®、Berkeley Software Distribution (BSD) 和Mac OS® X(通过终端来访问命令行),以及其他一些系统。
在开始学习之前,有一点需要注意:目前可以获得许多不同的类UNIX 分发版,从商业分发版(如AIX)到免费的分发版(如BSD 和Linux)。
本教程重点关注于所有分发版中都提供的一些命令和命令行选项,如果您发现与自己的分发版相比存在差异,那么请查看您的man 页面(稍后将会进行描述)。
请根据您的选择,登录到相应的类UNIX 操作系统,以便开始学习。
在登录之后,您应该自动地开始于您的用户home 目录中。
本教程中的示例使用tuser(测试用户)用户名。
man在开始使用特定的命令之前,需要了解关于man 的内容。
man 表示手册(manual),对于那些自信能够做到自给自足的UNIX 用户来说,它是非常关键的工具。
输入man application-name可以查看关于需要了解的内容的解释。
在本教程的每个页面中,我们鼓励您在执行其中指令的同时,查看相应的man 页面。
尝试输入下面的命令(请注意,$ 在本教程中表示命令提示符,在本教程的示例中,您应该在美元符号后面输入您所看到的内容):$ man ls2.目录您需要了解的第一件事情是,如何遍历和查看文件系统。
在UNIX 中,目录用来以一种层次结构对文件进行组织。
您可以在命令行中使用一系列的命令和列表来查看和遍历UNIX 文件系统,而不要单击目录进入其中并且用图标来表示每个文件。
2.1.ls如果您是第一次使用类UNIX 操作系统,但是曾经使用过DOS 或Windows 命令行,那么ls 基本上相当于dir。
它是列出目录(List Directory) 的缩写。
ls 可以与各种命令行选项一同使用,以便获得详细的列表、显示隐藏的文件、递归列出子目录,等等。
请输入下面的示例:$ ls$ ls -l$ ls -a$ ls -R如果您正在命令行中考虑下一步应该进行什么操作,那么可以执行ls,它可以帮助您了解现在所处的位置以及正在进行的操作。
可以把它看作图形用户界面中的屏幕刷新操作,用来让您了解系统的当前状态。
2.2.cd要遍历文件系统,可以使用cd 来更改目录。
输入cd,然后输入您希望进入的目录的名称。
如果在开头使用了/,那么这个目录的名称是绝对目录路径:它从文件系统的根开始。
如果在开头没有使用/,那么该目录是相对路径:从您的当前工作目录开始。
例如,如果您位于自己的home 目录(/home/tuser),并且希望移动到某个子目录,可以在cd 的后面输入希望进入的目录名称。
例如,如果有一个Documents 目录,那么您可以输入下面的命令:$ cd Documents因为您开始于/home/tuser/,所以该命令将使您进入/home/tuser/Documents/。
与此相反,您可以使用绝对路径名来指定一个位置。
例如,如下所示,您可以移动到/tmp,然后返回到您的home 目录:$ cd /tmp$ cd /home/tuser2.3.特殊目录名称在UNIX 中,使用一些特殊的目录名称可以使得对文件系统的遍历变得简单。
三个最重要的特殊名称分别指向当前目录、当前目录的父目录和用户的home 目录。
当前目录可以由点号指定。
例如,如果您输入$ cd .,那么您依然位于当前目录中,即/home/tuser/。
当您运行当前工作目录中的可执行文件时,该字符变得特别重要。
在缺省情况下,许多UNIX Shell 会在应用程序目录中搜索应用程序,但不会搜索当前工作目录。
通常可以在文件名前面使用./,以显式地引用当前工作目录中的文件和应用程序。
父目录由两个点号来引用。
要遍历到您的当前工作目录的父目录,可以输入下面的命令:$ cd ..如果您以前位于/home/tuser,那么现在就在/home 中。
为了演示第三个特殊目录名称,可以使用快捷方法返回您的home 目录(波浪符号)。
可以输入下面的命令:$ cd ~2.4.pwd要查看当前目录,您可以使用pwd,它表示打印工作目录(Print Working Directory)。
它可以告诉您现在位于文件系统中的何处,这将帮助您在指定相对路径名称时确定应该使用什么样的名称。
请尝试使用这三种特殊目录名称、绝对路径和相对路径,以遍历您的文件系统。
在每一步骤中,可以使用pwd 查看当前位置。
查看当前目录(如果您执行了前面部分中的操作步骤,那么现在应该位于您的home 目录):$ pwd2.5.mkdir、rmdirmkdir 和rmdir 分别用来创建和删除目录。
rmdir 仅当该目录为空有效(它并不删除文件)。
尝试使用下面的命令:$ mkdir TUTORIAL$ cd TUTORIAL$ pwd$ ls您现在位于刚刚创建的TUTORIAL 目录,而且该目录为空。
您还可以使用~ 波浪号字符到达该目录。
要进入/home/tuser/TUTORIAL,可以输入:$ cd ~/TUTORIAL$ pwd2.6.目录布局您已经了解了如何在目录中移动并获取清单,现在可以开始研究典型的UNIX 分发版中的目录布局了。
您可以通过几种不同的方式来组织UNIX 文件系统。
本教程讨论了一些在大多数类UNIX 分发版中常见的根级目录。
当然还有其他一些重要的根级目录,但下面这些是最常见的:/home (or /users)/etc/bin/sbin/usr/car/tmp/home 用来存放用户目录。
例如,tuser 用户位于/home/tuser。
/etc 是用来存储系统范围设置的目录,包括启动脚本和网络配置文件。
该目录中的大多数文件都需要使用root 用户进行编辑。
/bin 和/sbin 是用来存储系统可执行文件(比如在本教程中学习的命令)的目录。
/sbin 用于存放系统命令,如shutdown,而/bin 用于存放用户命令。
应用程序通常安装在/usr 中。
/usr/local/ 中的子目录通常用来包含一些安装的应用程序,而这些应用程序并不属于基本分发版中的一部分。
/var 是用来存放类似日志文件这样的内容的目录,需要不断地对其进行更新和存储。
临时文件存储在/tmp 中。
系统中所有的用户都可以对该目录进行写入,并且在一些系统中,会周期性地删除其中的旧文件。
3.文件既然您已经知道了如何使用命令行在文件系统中移动,那么现在可以开始对文件进行处理了。
本部分内容将介绍如何创建示例文件、复制文件、删除文件,以及查看和更改基本的文件权限。
在像UNIX 这样的多用户操作系统中,必须了解所有权和权限的概念。
3.1.Touch首先,创建一个空文件,您将在本教程中使用到该文件。
touch 命令可以用来创建一个空文件(对文件使用touch 命令,通常用来更新文件的修改日期和访问日期)。
返回到用户home 目录中的TUTORIAL 目录,并输入下面的命令创建一个文件:$ cd ~/TUTORIAL$ touch example.txt3.2.cpcp 命令用来复制文件。
输入cp 加上需要复制的文件的名称,再加上需要将该文件复制到的目录(您还可以使用相应的选项来指定新文件的名称)。
例如,尝试将example.txt 文件复制到/tmp/:$ cp example.txt /tmp/$ ls /tmp/您应该可以在/tmp/ 中看到example.txt。
现在,将/tmp/ 中的文件复制回您的当前目录,但是为它取一个新的名称:$ cp /tmp/example.txt ./example2.txt$ ls请注意,这里使用一个点号来指定需要将这个新文件放到您的当前目录。
在本示例中,不需要包括./(因为复制操作的缺省路径就是您的当前工作目录),但是它可以清楚地说明您要完成的任务。
后面的ls 命令则显示了在当前工作目录中有两个示例文件。
3.3.mv移动(move)文件可以使用mv 命令来完成。
对于移动和复制操作来说,大多数语法和命令行选项都是相同的。
如果您希望将新文件example2.txt 移出当前目录并放入到/tmp/,那么可以输入下面的命令:$ mv example2.txt /tmp/.请注意,这里再次使用了点号显式地说明您正在进行的操作。