登陆Linux系统后,输入命令 ls /,便可查看根目录下的全部目录。node
这些就是Linux系统的目录结构。windows
一、/bin与usr/bin:即Binary的缩写,该目录下存放的是最经常使用的命令。less
二、/boot:启动Linux时使用的一些核心文件,包括一些链接文件和镜像文件。ssh
三、/dev:(Device的缩写),该目录存放的是Linux的外部设备。spa
四、/etc:全部系统管理所须要的配置文件和子目录。命令行
五、/home:用户的家目录。3d
六、/lib与lib64:系统最基本的动态链接共享库,其做用相似于Windows里的DLL文件。日志
七、/media:系统会自动识别一些设备(U盘、光驱等),当识别后,Linux会把识别的设备挂载到该目录下。blog
八、/mnt:让用户临时挂载别的文件系统,好比咱们能够把光驱挂载到/mnt/上,而后进入该目录查看光驱里的内容。递归
九、/opt:给主机额外安装软件所设置的目录,默认为空。
十、/proc:虚拟目录,是系统内存的映射,能够直接访问它来获取系统信息。
十一、/root:系统管理员的家目录。
十二、/run:和/var/run是同一个目录,用来存放一些服务的pid。
1三、/sbin与usr/sbin:系统管理员所使用的系统管理程序。
1四、/srv:存放一些服务启动以后须要提取的数据。
1五、/sys:存放的是与硬件驱动程序相关的信息。
1六、/tmp:存放一些临时文件。
1七、/var:该目录存放的是不断扩充且常常修改的目录,包括各类日志文件或者pid文件。
ls(list)的缩写,用于列出指定目录或者文件。
经常使用的参数:
-a:列出当前目录下的文件和目录,包括隐藏文件。
-l:列出当前目录下除隐藏文件外的全部文件和目录的详细信息,包括权限、全部者、所属组以和文件建立的日期和时间。
-h:以人性化的方式列出文件,主要是文件的大小显示方式(B,KB,MB,G)
-i:列出文件的inode
-d:列出当前目录
在Linux文件系统中,主要有如下几种类型的文件:
普通文件:即通常的文件。
目录:至关于windows中的文件夹。
连接文件:相似于windows中的快捷方式。
连接文件又分为硬连接和软连接,二者本质上的区别在于inode。
设备:却与系统周边相关的一些文件。
alias,即命令的别名,在命令行中直接输入alias便可查看系统已设置的别名。
如何自定义一个别名呢?
格式为alias 别名=’’,便可设置别名
能够用which命令查看详细信息:
取消别名的方法:unalias 别名
路径:即文件存放的地方。
在Linux中,分为绝对路径和相对路径。
绝对路径:由根目录/开始写起的,好比: /etc/ssh
相对路径:不是由根目录/开始写起的,好比: cd test
cd (change directory的缩写),用来切换用户所在目录。
cd :直接输入cd ,会进入当前用户的根目录下。
cd 后面加上目录名,则会切换到指定的目录下。
cd ~ 返回用户的家目录。
cd - :返回上一级目录。
cd . 表示当前目录,cd .. 表示当前目录的上一级目录。
mkdir (make directory的缩写),用于建立目录。
那么,若是咱们想在/tmp/zhangjin/目录下再建立目录1/2/3呢?这时候直接建立会发现报错
这时候,咱们再加参数-p就能够解决,-p,用于递归建立目录。
rmdir (remove diretory),用于删除空目录,该命令只能用于删除空目录,不能删除文件。
rm:用于删除目录mdir和文件,经常使用的参数有-r和-f
-r:删除目录,相似于rmdir,但比rmdir更强大,它能够删除非空目录。
-f:强制删除,若是后面跟一个不存在的文件或目录,也不会报错。
查看环境变量的命令:
将路径加入环境变量的方法:
cp(copy的简写):复制。格式为:cp [参数] [来源文件] [目的文件],例如,把test1复制成test2,能够这样写:cp test1 test2。
经常使用参数:
-r:用于复制目录,若是不加此参数,则不能复制目录。
-i:复制时若是文件已经存在,则会询问是否覆盖。
mv(move的缩写),该命令的格式为: mv [参数] [源文件或目录] [目标文件或目录]。
(1)、目标文件是目录,但该目录不存在时:会把源目录重命名为目标目录名。
(2)、目标文件是目录,且该目录存在时:会把源文件或目录移动到该目录中。
(3)、目标文件是文件,且该文件不存在时:会把源文件重命名为目标文件名。
(4)、目标文件是文件,但该文件存在时:会询问是否覆盖。
4个命令都是关于查看文件的。
cat: cat后面直接加文件名,能够查看文件内容。
加-n参数,能够显示行号:
tac: 和命令cat同样,不一样的是显示结果和cat正好反过来,先显示最后一行,而后倒数第二行,最后才显示第一行。
more:当文件内容太多时,一屏不能所有显示,这时就能够用more,当看完一屏时,按空格键能够继续看下一屏,看彻底部后就会退出,相关的快捷键:Ctrl+D向上翻屏 Ctrl+F向下翻屏 q退出。
less:功能和more同样,不一样的是,less能够一行一行显示,并且能够用 /(在当前行向下搜索) ?(在当前行向上搜索)来查找字符串。
head:用于显示文件的前10行,若是加参数-n,则表示显示文件的前n行。
tail:和head相似,用于显示文件的最后10行,若是加参数-n,则显示文件的最后n行。
文件的权限能够经过命令 ls -l 来查看。
咱们以文件123为例,从左至右可划分为9个部分:
一、- :表示普通文件,若是为d,则表示目录,此外还有l表示连接文件,b表示块设备等。rw-rw-r--:这部分又能够分为3部分,rwx为一组,共有3组,分别表示全部者(user),所属组(group)和其余人(other)的权限。其中,r表示可读,w表示可写,x表示可执行。因而可知123这个文件,全部者拥有的权限为可读可写(rw),所属组的权限为可读可写(rw),其余人的权限为可读(r)。
二、表示该文件占用的节点(inode),若是是目录,这个数值与该目录下是子目录数量有关。
三、该文件的全部者。
四、该文件的所属组。
五、该文件的大小。
6-八、表示该文件最后一次被修改的时间,格式为月份、日期和时间。
九、文件名。
chgrp不经常使用(change group) :更改文件的所属组。格式为: chgrp [组名] [文件名]。
chown(change ower) :更改文件的全部者。格式为: chown [-R] 帐户名 文件名 或者 chown [-R] 帐户名:组名 文件名。
再查看目录dir3下的文件test3,能够发现test3文件的全部者仍是root
加上参数-R,能够发现,文件的全部者也改成user1了。
chmod (change mode):改变用户对文件/目录的读写执行权限。格式为: chmod [-R] xyz(数字) 文件名。
为了方便更改文件的权限,Linux使用数字来代替rwx,r=4, w=2, x=1,-=0。例如,rwxrw-r--,用数字表示就是764(4+2+1=7,4+2+0=6,4+0+0=4)。
chmod还支持使用rwx的方式来设置权限。通常用u、g、o来分别表示user、group和others的属性,a(all)则表明所有。
默认状况下,目录的权限值为755,普通文件的权限值为644,这个值的规定便涉及umask了。
umask用于改变文件的默认权限,格式为:umask 3位数字。
查看umask的值,只要在命令行中输入命令umask便可。
能够看到,umask的预设值是0022,那么这表示什么含义呢?咱们先来看如下两条规则。
一、若用户创建普通文件,则预设没有可执行权限,只有r、w两个权限,最大值为666(-rw-rw-rw-)。
二、若用户创建目录,则预设全部权限均开放,即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--
能够看到,建立的目录默认权限变为755,文件的默认权限变为664。
关于umask的计算方法,不该该直接单纯用数字相减,而应该换算成rwx来相减进行换算。