使用pwd命令可以显示当前的工作目录,该命令很简单,直接输入pwd即可,后面不带参数。 新建目录:
可使用mkdir命令创建一个新的目录。需要注意的是新建目录的名称不能与当前目录中已有的目录或文件同名,并且目录创建者必须对当前目录具有写权限。该命令格式如下: mkdir [参数] 目录名
常用参数及含义如下表所示。 -m -p 删除目录
删除空目录可以使用rmdir命令,该命令是从一个目录中删除一个或多个子目录项。需要注意的是,一个目录被删除之前必须是空的。删除某一个目录时,必须具有对其父目录的写权限。如果要删除的目录不空,将产生错误提示。该命令的基本使用格式如下: rmdir [-p] 目录 命令中选项含义如下。
参数-p表示递归删除目录,当子目录删除后,其父目录为空时也一同被删除。命令执行完毕后,显示相应信息。 此外,使用rm –r也可删除目录及其下的文件和子目录。 [root@myhost root]# rmdir –p /root/dir1/dir3 [root@myhost root]# rm –r dir2
执行rmdir –p命令递归删除目录时,首先从最里层的子目录进行删除,当dir3删除后,dir1为空目录,所以能够递归
对新建目录设置存取权限 如果欲建立的目录的上层目录尚未建立,则一并建立其上的所有祖先目录 复制、移动和重名文件
复制、移动和重命名文件,是几个较为常用的文件操作 cp [参数] 源文件或目录 目标文件或目录 常用参数及含义如下表所示。
参 数 含 义 该选项通常在复制目录时使用,它保留链接、文件属性,并递归地复制目录 -a -d -f -i 复制时保留链接 删除已经存在的目标文件而不提示 交互式复制,在覆盖目标文件之前将给出提示要求用户确认 此时cp命令除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件-p 中 若给出的源文件是目录文件,则cp将递归复制该目录下的所有子目录和文件,目标-r 文件必须为一个目录名 不作复制,只是链接文件 -l 注意:为防止用户在不经意的情况下用cp命令破坏另一个文件,建议用户在使用cp命令复制文件时,最好使用i选项。
移动或重命名文件
用户可以使用mv命令来移动文件或目录,也可以给文件或目录重命名。它的用法相当于DOS下的ren和move的组合。该命令格式如下:
mv [参数] 源文件或目录 目标文件或目录 常用参数及含义如下表所示。
参 数 含 义 交互方式操作,如果mv操作将导致对已存在的目标文件的覆盖,系统会询问是否重写,要求用户回答以避免误覆盖文件 禁止交互式操作,如有覆盖也不会给出提示
-f
如果mv命令格式为“mv 源文件 目标文件”,且两个文件在同一目录下,则表示将源文件重命名为目标文件; mv命令是移动文件或目录还是重命名文件或目录,视源文件和目标文件的类型而定。
? 如果源文件和目标文件的类型都为文件,且两个文件同在一个目录,则是将源文件重命名为目标文件。 ? 如果源文件为目录,目标文件为不存在的目录,它们同在一个父目录,则是将源目录重命名为目标目录。 ? 如果目标文件为已存在的目录,源文件可以是多个文件或目录,mv命令将指定的源文件或目录均移至目标目
录中。
注意:使用mv命令跨文件系统移动文件时,先复制文件,再将原有文件删除,而链接至该文件的链接也将丢失。
-i 归档管理
计算机中的数据经常需要备份,tar是Linux中最常用的备份工具,此命令可以把一系列文件归档到一个大文件中,也可以把档案文件解开以恢复数据。此外,tar命令还可用于压缩和解压缩文件。tar命令很特殊,其参数前面可以使用“-”,也可以不使用
tar [参数] 打包文件名 文件 参 数 -c -C -v -f -r -t -z -j -d -x
tar cvf homebak.tar /home
[root@myhost home]# tar xvf homebak.tar
注意:默认情况下tar命令会把档案文中包含的文件恢复到当前工作目录中,也许这不是文件的原始位置,可以使用选
含 义 生成档案文件 切换到指定的目录 列出归档解档的详细过程 指定档案文件名称 将文件追加到档案末尾 列出档案中包含的文件 以gzip格式压缩或解压缩档案文件 以bzip2格式压缩或解压缩档案文件 比较档案与当前目录中的文件之间的差异 解开档案文件 项-C指定要恢复到的目录。 tar的压缩与解压缩功能
为节省存储空间或减少网络传输时间,许多文件都需要进行压缩,形成了压缩文件,例如test.tar.gz或者test.tgz文件。tar命令也提供了压缩与解压缩的功能。
提示:tar命令中的参数-z和-j用于压缩文件,前者为以gzip格式压缩,后者则是以bzip2格式压缩,需要注意的是tar的压缩和解压缩功能必须有归档功能一起使用,即-z参数和-j参数必须-c 、-x参数一起使用。 [root@myhost root]# tar czvf homebak.tar.gz /home 而要解开这个档案文件,可以运行如下命令: [root@myhost root]# tar xzvf homebak.tar.gz
注意:tar档案文件的扩展名一般为.tar,如果使用了gzip压缩格式,则扩展名通常为.tar.gz或者.tgz;如果使用了bzip2压缩格式扩展名则为.tar.bz2。
其他的与文件操作相关的命令。
1.clear命令
clear命令用来清除屏幕内容,它不需要任何参数。该命令基本的使用格式如下: clear 2.ln命令
在Linux系统中ln命令用于为某一个文件在另一个位置创建一个链接。
Linux文件系统中,链接可分为两种:硬链接(hard link)与符号链接(symbolic link)。硬链接是指一个文件可以有多个别名,但都表示同一文件实体。符号链接也称软链接,是产生一个特殊的文件,该文件的内容是指向另一个文件(链接目标),它们的关系类似于Windows下的快捷方式。符号链接的绝大部分操作(包括打开、读、写等)都被传递给其链接目标文件,其操作的真正作用在链接目标上,另外一些操作(如删除等)则作用在符号链接本身。硬链接必须存在同一个文件系统中,即磁盘的同一分区中,而软链接却可以跨越不同的文件系统。 目录不能建立硬链接!
ln命令既可以创建硬链接,也可以创建软链接,至于创建的是硬链接还是软链接则由参数决定。其使用格式如下: ln [参数] 源文件 链接文件
参 数 -f -d -i -n -s -v -b 含 义 链接时先将与目标文件同名的文件删除 允许系统管理员创建对目录的硬链接,默认不允许 在删除与目标文件同名的文件时先进行询问 在进行软链接时,将目标文件视为一般的文件 创建软链接,默认创建硬链接 在链接之前显示其文件 在创建链接时将可能被覆盖或删除的文件进行备份 为文件file1建立软连接sl可用如下命令: [root@myhost root]# ln –s file1 sl
为文件file1建立一个硬链接hl可用如下命令: [root@myhost root]# ln file1 hl diff命令
该命令采用逐行比较的方式比较两个文件之间的差异,其使用格式如下: diff [参数] 文件1 文件2 常用参数及含义如下表所示。
-a -b -B -c -q -x name -y -i -w -r -p -s -T -S file --supress-common-lines 将所有文件作为文本文件进行比较 忽略空格的差异,即多个空格当作一个空格处理 忽略空行 显示全部内文,并标出不同之处 只报告两个文件是否相同,不报告细节 不比较该参数中所指定的文件或目录的名称 以并列的方式显示文件的不同的地方 忽略大小写 忽略所有空格 比较时,递归地比较该目录下所有的子目录 若比较的是C程序代码,显示差异所在的函数名称 当两个文件相同时报告 比较时,在每行前面加上tab字符以便对齐 在进行目录比较时,从文件file开始 不显示相同的行 (1) 如果给定的file1和file2都是文件,diff就比较这两个文件的内容。如果其中一个文件的文件名是“-”,diff就从标准输入上读取文本,即从键盘中输入文本。
(2) 如果指定要比较目录,即file1和file2都是目录,则diff会比较目录中相同文件名的文件,但不会比较其中子目录。 (3) 如果file1和file2中有一个是文件,另一个是目录(假设file1是目录,file2是文件),diff则从file1目录中查找与file2文件同名的文件,然后进行比较。 使用diff比较file2和file4文件。
在命令提示符下执行如下的命令,其执行结果如下图所示。 [root@myhost root]# diff -y file2 file4 cut命令
该命令用于从文件中获取指定位置的字符串,其基本格式如下: cut [参数] 文件 参 数 -c n1,n2 -f m1,m2 -d \ 含 义 获取每一行的第n1到n2个字符 获取每一行的第m1到m2栏的字符 指定栏的分隔符,不指定的话默认用制表符作为分隔符 [root@myhost root]# cut -f 1,3 -d \
提示:在使用-f参数时,默认的分隔符是制表位tab符,此时可以使用-d \来指定栏的分隔符,但是其中的sep_char只能是单个字符,例如,上例指定分隔符为“:”。
文件权限管理:
文件权限就是文件的访问控制权限,即哪些用户和组群可以访问文件以及可以执行什么样的操作。文件权限与系统的数据安全息息相关。
Linux系统是一个典型的多用户系统,不同的用户处于不同的地位,对文件和目录有不同的访问权限。为了保护系统的安全性,Linux系统除了对用户权限作了严格的界定外,还在用户身份认证、访问控制、传输安全、文件读写权限等方面作了周密的控制。文件权限就是对系统中的不同用户访问同一文件的权限做了不同的规定。这些规定囊括了文件访问控制、文件保密性、文件完整性等方面。
Linux系统中,用户对文件的文件读写权限包括3种,分别是读权限、写权限和可执行权限。 注意:通常,Linux系统只允许文件的属主或超级用户改变文件的读写权限。
chmod [参数] 文件或目录名
说明:该命令的参数部分可以使用符号表达式,也可以使用八进制数充当。当使用字符表达式时,包括三部分,即用户对象、操作符号和读写权限。
(1)用户对象,分为属主用户、属组、其他用户和所有用户,分别以如下的符号表示:
? u:属主,即文件或目录的所有者,拥有对文件最大的读写权限。 ? g:属组,即与文件属组有相同组ID的所有用户。 ? o:表示其他用户,通常只具有浏览权限。 ? a:表示以上所以用户。
(2)操作符号包括添加权限、取消权限和赋予权限操作,分别以如下的符号表示:
? +:添加某个权限。 ? -:取消某个权限。
? =:赋予给定权限并取消其他所有权限(如果有的话)。
(3)读写权限包括可读权限、可写权限和可执行权限,分别以如下的符号表示:
? r:可读权限。如果文件可读,表示用户可以读取该文件的内容;如果目录可读,表示用户可以列出该目录的信
息。
? w:可写权限。如果文件可写,表示用户可以修改该文件的内容,或删除该文件;如果目录可写,表示用户可
以在其中创建新的目录或文件,或删除目录内的文件或子目录。
? x:可执行。对于文件来说,可执行权限表示具有该权限的用户可以运行该程序;对于目录来说,可执行权限表
示具有该权限的用户可以进入该目录。
注意:上述3种读写权限可以任意组合使用。另外,如果用户对某文件仅具有可执行的权限时,也并不能真正被运行,它还必须具有该用户的可读属性。 [root@myhost root]# chmod a-x file1 [root@myhost root]# chmod g+w file1
chmod的参数也可以使用三位八进制数来表示读写权限,这样的数字称为权限数字 [root@myhost root]# chomd 664 file1
改变文件/目录的所有权
文件和目录的所有权是Linux文件安全模型的另一个组成部分。用户可以使用chown命令来修改文件的所有者和归属的组从而限制文件或目录的访问权限。使用chgrp命令也可以改变文件的归属组。只有用户本身或超级用户才能更改文件的所有权限。
chown [参数] 属主[.属组] 文件或目录