Linux命令
Posted datouyanggege
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux命令相关的知识,希望对你有一定的参考价值。
1、Cd命令
命令cd (change directory的简写)是用来变更用户所在目录的,如果后面什么都不跟,就会直接进入当前用户的根目录下。
2、mkdir命令
命令mkdir (make directory的简写) 用于创建目录,这个命令在上一章中用过。该命令的格式为:mkdir [-mp] [目录名称]。其中,-m、-p为其选项。
-m 用于指定要创建目录的权限
-p 用于创建一大串级联目录,并且当创建一个已经存在的目录时,不会报错。
3、rmdir命令
命令rmdir(remove directory的简写)用于删除空目录,后面可以是一个目录,也可以是多个目录(用空格分隔)。该命令只能删除目录,不能删除文件。
-p 用于级联删除一大串目录,但在级联的目录中,如果某一个目录里还有目录或者文件时,这个命令就不好用了。
4、rm命令
命令 rm 是最常用的
-r 删除目录用的选项,类似于rmdir,但可以删除非空目录。
-f 强制删除。 它不再询问是否删除,而是直接删除。如果后面跟一个不存在的文件或者目录,则不会报错。
关于rm命令有很多,可以通过man rm来获得它的详细帮助信息,-rf选项很常用,这样删除文件或者目录比较方便,但请注意,rm -rf命令后面不能只加“/”,否则它会把系统文件全部删除,这是非常危险的!
5、which命令
Which命令,用于查找某个命令的绝对路径。
值得注意的是,由于PATH里没有/root目录,如果你将ls移动到/root目录下,当执行ls命令时,系统自然找不到可执行文件,它会提示 command not found!
6、cp 命令
-r 如果要复制一个目录,必须加-r选项,否则不能复制,
-i 这是安全选项,如果遇到一个已存在的文件,会询问是否覆盖。
7、mv 命令
mv是move的简写,该命令的格式为:mv [选项] [源文件或者目录] [目标文件或目录]。
当目标文件是目录时,其存在与否,执行后的结果是不一样的。如果该目录存在,则会把源文件或目录移动到该目录中。如果该目录不存在,则会把源目录重命名为给定的目标文件名。
当目标文件是文件时,其存在与否,执行后的结果也是不一样的。如果该文件存在,则会询问是否覆盖。如果该文件不存在,则会把源文件重命名为给定的目标文件名。
8、cat命令
命令cat(他并不是某个单词的简写,可以通过man cat 命令查看他的解释)是比较常用的一个命令,用于查看一个文件的内容并将其显示到屏幕上。Cat后面可以不加任何选项,直接跟文件名。
-n 查看文件时,把行号也显示到屏幕上。
-A 显示所有的内容,包括特殊字符。
9、“>>”与“>”符号的用法
>>与>类似,其作用时重定向,即把前面的内容输入到后面的文件中,但符号>>是“追加”的意思。当使用符号>时,如果文件中有内容,则会删除文件中原有的内容,而使用符号>>则不会删除原有的内容。
10、tac命令
和cat命令一样,命令tac(正好时命令cat的反序写法)也是把文件的内容显示在屏幕上,只不过是先显示最后一行,然后显示倒数第二行,最后才显示第一行。
11、more命令
命令more也用于查看一个文件的内容,后面直接跟文件名。当文件内容太多,一屏不能全部显示时,用命令cat肯定时看不了前面的内容,这时可以使用命令more。当看完一屏后,按空格键可以继续看下一屏,看完所有内容后就会退出,按Ctrl+D可以向上翻屏,按Ctrl+F向下翻屏(同空格)。如果你想提前退出,按q键即可。
12、less命令
命令less的作用和命令more一样,后面直接跟文件名,但命令less比more功能要多一些。按空格键可以翻页,按j键可以向下移动(按一下就向下移动一行),按k键可以向上移动。在使用more和less查看某个文件时,你可以按一下/键,并输入一个字符串(如root),然后回车,这样就可以查找这个字符串了。如果是查找多个该字符串,可以按n键显示下一个。另外,也可以用?键替代/键来搜索字符串,唯一不同的是,/键是在当前行向下搜索,而?键是在当前行向上搜索。
13、head命令
命令head用于显示文件的10行,后面直接跟文件名。如果加-n选项,则显示文件的前几行。
-n后面有无空格均可,且字母n也可以省略。
14、tail命令
和命令head类似,命令tail用于显示文件的最后10行,后面直接跟文件名。如果加-n选项,则显示文件的最后几行。
同样,-n后面有无空格均可,且字母n也可以省略。
另外,命令tail的-f选项也常用,它可以动态显示文件的最后10行。如果文件内容在不断增加,使用-f选项非常方便和直观。
15、chgrp命令
chgrp(change group的简写)命令可以更改文件的所属组,其格式为:chgrp [组名] [文件名]。
如果想要级联更改子目录以及子文件,加-R选项可以实现。
16、chown命令
Chown(change owner的简写)命令可以更改文件的所有者,其格式为:chown [-R] 账户名文件名或者chown [-R] 账户名:组名 文件名。这里的-R选项只适用于目录,作用是级联更改,既不仅更改当前目录,连目录里的目录或者文件也全部更改。
17、chmod命令
为了方便更改文件的权限,Linux使用数字替代rwx(读写执行),具体规则为:r等于4,w等有2,x等于1,-等于0。
命令chmod(change mode的简写)用于改变用户对文件/目录的读写执行权限,其格式为:chmod [-R] xyz 文件名 (这里的xyz表示数字)。其中,-R选项的作用等同于chown命令的-R选项,也表示级联更改。
注意,在Linux系统中,一个目录的默认权限为755,而一个文件的默认权限为644。
Chmod还支持使用rwx的方式来设置权限,我们用u、g和o来分别表示user、group和others的属性,用a代表all(即全部)。
例如:
#chmod u=rwx,og=rx /dir3/test3
此外还可以针对u、g、o和a,增加“+”或者减少“-”他们的某个权限
例如:
#chmod u-r /dir3/test3
18、umask命令
命令umask用于改变文件的默认权限,其格式为: umask xxx(这里的xxx代表3个数字)。如果要查看umask的值,只要在命令行输入umask,然后回车即可,如下所示:
#umask
0022
这里umask的预设值是0022,这表示什么含义呢?先了解以下两条规则。
(1)、若用户建立普通文件,则预设没有可执行权限,只有r、w两个权限,最大值为666(-rw-rw-rw-)。
(2)、若用户建立目录,则预设所有权限均开放,即777(drwxrwxrwx)。
Umask数值代表的含义为以上两条规则中的默认值(文件666,目录777)需要减掉的权限,所以:
目录的权限为rwxrwxrwx - ----w--w-=rwxr-xr-x
普通文件的权限为rw-rw-rw- - ----w--w-=rw-r--r--
Umask的值是可以自定义的,比如设定umask为002,你再创建目录或者文件时,默认权限分别为:
rwxrwxrwx - ---------w- =rwxrwxr-x(目录的权限)
rw-rw-rw- - -------w- =rw-rw-r--(文件的权限)
19、chattr
命令chattr(change attribute)的格式为:chattr [+ - =] [Asaci] [文件或者目录名],其中,+、-和=分别表示增加、减少和设定。
各个选项的含义如下:
A:增加该属性后,表示文件或者目录的atime将不可修改。
S:增加该属性后,会将数据同步写入磁盘中。
a:增加该属性后,表示只能朱家不能删除,非root用户不能设定该属性。
c:增加该属性后,表示自动压缩该文件,读取时会自动解压。
i:增加该属性后,表示文件不能删除、重命名、设定链接、写入以及新增数据。
20、Lsattr
命令lsattr(list attribute),该命令用于读取文件或者目录的特殊权限,其格式为:lsattr [-aR] [文件/目录名]。
-a 类似于ls的-a选项,即连同隐藏文件一同列出。
-R 连同子目录的数据一同列出。
以上是关于Linux命令的主要内容,如果未能解决你的问题,请参考以下文章