程序员Linux 相关文章Linux

Linux 文件&目录相关命令简介

2017-03-17  本文已影响0人  镜下尘埃

命令描述

此处要介绍的相关命令共有29个
关于文件与目录管理的命令有9个,分别是cdlspwdmkdirrmdircprmmvtouch

关于文件与目录权限的命令有6个,分别是chownchgrpchmodumaskchattrlsattr

关于文件查看与寻找的命令有14个,分别是cattacnlmorelessheadtailodwhichwhereislocatefindfileupdatedb

常用参数

应用示例

[root@www ~]# cd                    //切换至家目录
[root@www ~]# cd -                  //切换到上一个工作目录
[root@www /]# cd /lib               //切换到/lib目录
[root@www ~]# ls -l --time=atime a  //查看a文件的access time
[root@www lib]# pwd                 //显示当前工作路径
[root@www ~]# mkdir -p a/b/c        //连续创建a/b/c目录
[root@www ~]# mkdir -m 777 -p a/b/d //连续创建a/b/d目录并且设置目录权限为777
[root@www ~]# rmdir -p a/b/c        //连续删除a/b/c目录
[root@www ~]# cp -s a as            //符号连接(symbolic link)
[root@www ~]# cp -l a al            //实体连接(hard link)
[root@www ~]# rm -rf a              //递归强制删除a目录及其子目录所有数据
[root@www ~]# mv a b c .            //将a、b、c移动到当前工作目录
[root@www ~]# cat -A sshd.conf      //显示sshd.conf文件内容,包括特殊符号
[root@www ~]# tac /etc/issue        //倒着显示issue文件内容
[root@www ~]# nl -b a -n rz -w 3 a  //显示a文件内容,所有行带行号,行号显示在右侧且不足3位时补足0
[root@www ~]# more /etc/man.config  //翻页查看man.config文件
[root@www ~]# less /etc/man.config  //翻页查看man.config文件
[root@www ~]# head -n -20 file      //查看file文件倒数20行以前的内容
[root@www ~]# tail -n +100 file     //查看file文件100行以后的数据
[root@www ~]# od -t c passwd        //以ascii方式查看passwd文件
[root@www ~]# touch -d "2 days ago" bashrc //更改修改日期到两天前
[root@www ~]# umask 052             //设置默认权限为拿掉同组读执行,其他写权限
[root@www ~]# chattr +i attrtest    //为attrtest添加隐藏的i属性
[root@www ~]# lsattr attrtest       //显示attrtest的隐藏属性
[root@www ~]# file /usr/bin/passwd  //显示passwd的文件类型
[root@www ~]# which ifconfig        //查找ifconfig的来源
[root@www ~]# whereis ifconfig      //查找ifconfig文件(该命令搜索时搜索的是数据库而非直接搜索磁盘)
[root@www ~]# locate passwd         //查找passwd文件
[root@www ~]# updatedb              //更新/var/lib/mlocate/内的数据库
[root@www ~]# find / -mtime 0       //找出今天更改过的文件
[root@www ~]# find / -perm +7000 -exec ls -l {} \;   //查找包含7000任意一个权限的文件,并且使用ll列出详情
[root@www ~]# chgrp root file       //更改文件所有群组为root组
[root@www ~]# chgrp -R root dir/    //递归更改dir下所有的文件和目录的所有者为root用户
[root@www ~]# chown root file       //更改文件所有者为root用户  //更改文件所有者和所属群组为root
[root@www ~]# chown -R root dir/    //递归更改dir下所有的文件和目录的所有者为root用户     
[root@www ~]# chown root:root file  //更改文件所有者和所属群组为root账户和root组
[root@www ~]# chown :root file      //更改文件所有群组为root组
[root@www ~]# chmod 777 file        //对更改文件权限为所有者可读可写可执行,所有群组可读可写可执行,其他用户可读可写可执行
[root@www ~]# chmod -R 777 dir/     //递归更改目dir下所有文件和目录权限为所有者可读可写可执行,所有群组可读可写可执行,其他用户可读可写可执行
[root@www ~]# chmod 7777 file       //对更改文件权限为所有者可读可写可执行,所有群组可读可写可执行,其他用户可读可写可执行,同时增加SUID,SGID,SBIT权限。

概念简介

目录概念

在linux中,有5个特殊目录:

权限概念

ls -l命令的输出内容中,显示出每一个文件或目录的一些常见属性,例如:

[root@www ~]# ls -l
total 4
drwxr-xr-x 2 root root 4096 Mar  2 07:58 dir
-rw-r--r-- 1 root root    0 Mar  2 07:58 file
权限 连接数 所属用户 所属用户组 占用空间 最后修改日期 文件/目录

在上述的属性中,第一栏drwxr-xr-x为该文件的权限栏,该块共有10个字符组成。其中第一个字符显示该文件的类型,共有7种文件类型:

其余9个字符分为三组,第一组代表文件拥有者的权限,第二组代表文件拥有组的权限,第三组代表其他用户的权限
三组中每组又有三个字符,分别代表这rwx权限,也就是读,写,执行权限。当权限不存在时,系统会以-填充该位。

三个特殊权限

SUID
该权限仅作用于文件,主要用途是让使用者临时拥有文件所有者的权限,仅对可执行的二进制文件有用,对脚本无效,在文件所有者的x权限上生效,存在时x权限变为小写s,当x权限本身不存在时,显示大写S

SGID
当该权限作用在文件上时,主要用于是让使用者拥有该文件群组的权限;如果该权限作用在目录上时,主要是让新建的文件或者目录的所属组为当前目录的所属组,在文件群组的x权限上生效,存在时x权限变为小写s,当x权限本身不存在时,显示大写S
作用于文件

作用于目录

SBIT
该权限仅作用于目录,主要用途是让使用者在该目录创建了新文件或目录时,仅有该使用者或root才有权利删除该文件,在文件其他用户的x权限上生效,存在时x权限变为小写t,当x权限本身不存在时,显示大写T

以上三个特殊权限的配置与一般权限配置类似,只不过在需要配置特殊权限时,chmod后跟四位权限信息即可(需要注意的是,在配置特殊权限时要保证对应的位置上有x权限,否则将会显示大写的字母来标识无效)

权限总结

一、让使用者能进入某目录成为『可工作目录』的基本权限为何?

二、使用者在某个目录内读取一个文件的基本权限为何?

三、让使用者可以修改一个文件的基本权限为何?

四、让一个使用者可以创建一个文件的基本权限为何?

五、让使用者进入某目录并运行该目录下的某个命令之基本权限为何?

上一篇 下一篇

猜你喜欢

热点阅读