2020.3.2 Linux文件和目录

一、绝对路径和相对路径

绝对路径: 路径的写法一定是由根目录/写起的,例如 /usr/local/mysql
相对路径: 路径的写法不是由根目录/写起的。例如#cd /home #cd test ,此时用户所在的路径为/home/test,这个test是相对于/home目录来讲的,所以称为相对路径。

linux基础命令

1、命令cd: 用来变更用户所在目录的,如果后面什么都不跟,就会直接进入当前用户的根目录下。示例如下

cd /tmp/  进入指定目录(tmp为目录名)
cd . “.”表示当前目录
cd .. “..”表示当前目录的上一级目录

2、命令mkdir: 用于创建目录。该命令格式为:mkdir[-mp][目录名称]。其中,-m、-p为其选项。-m选项用于指定要创建目录的权限。示例命令如下:

mkdir -p /tmp/test/123

3、命令rmdir: 用于删除空目录,可以是一个,也可以是多个目录(用空格分隔)。该命令只能删除目录,不能删除文件。示例命令如下:

#ls /tmp/test
123
#rmdir /tmp/test/123
#ls /tmp/test
# (已删除)

4、命令rm

  • -r:删除目录用的选项,类似于rmdir,但可以删除非空目录。
  • -f:表示强制删除。不是询问是否删除,而是直接删除。

示例命令如下:

#rm -rf /tmp/test/123

(注:rm -rf命令后面不能加“/”,否则会把系统文件全部删除)

5、环境变量PATH
命令which,用于查找某个命令的绝对路径。

#echo $PATH  这里的echo用来输出$PATH的值,$是变量的前缀符号。

6、命令cp: cp是copy的简写,该命令格式为:cp[选项] [来源文件] [目的文件]。

  • -r:复制目录
  • -i:这是安全选项,询问是否覆盖

7、命令mv: mv是move的简写,该命令格式为:mv[选项] [源文件或目录] [目标文件或目录]。
当目标文件是目录时,其存在与否,执行后的结果是不一样的。若目录存在,则会把源文件或目录移动到该目录中。若该目录不存在,则会把源目录重命名为给定的目标文件名。

与文档相关命令

1、命令cat: 比较常用的命令,用于查看一个文件的内容并将其显示在屏幕上。cat后面可以不加任何选项,直接跟文件名。

  • -n:查看文件时,把行号也显示到屏幕上。
  • -A:显示所有的内容,包括特殊字符。

2、命令tac: 和命令cat一样,也是把文件内容显示在屏幕上,不过是倒序。如:

#tac dirb/filee

3、命令more: 用于查看一个文件内容,后面直接跟文件名。当文件内容太多,一屏不能显示全,用命令cat肯定是看不了前面的内容,这时可以用命令more。空格键看下一屏,ctrl+d向上翻屏,ctrl+f向下翻屏。

4、命令less: 与命令more一样,后面直接跟文件名,但命令less比命令more功能多一些。空格键翻页,j键向下移动,k键向上移动,使用more或less查看文件时,可按/键并输入字符串,回车,这样可查找字符串。

5、命令head: 用于显示文件的前10行,后面直接跟文件名。

6、命令tail: 和命令head类似,命令tail用于显示文件的最后10行。

文件所有者和所属组

所有者:文件的拥有者。

所属组:这个文件所属用户组。

linux文件属性

  1. 第一列:包含该文件的类型,所有者,所属组以及其他用户对该文件的权限。
  2. 第二列:表示该文件占用的节点,如果是目录,那这个数值与该目录下是子目录数量有关。
  3. 第三列:表示该文件的所有者。
  4. 第四列表示该文件的所属组。
  5. 第五列:表示该文件的大小。
  6. 第六、七、八列:表示该文件最后一次被修改的时间,依次为月份、日期以及时间。
  7. 第九列:表示文件名。

更改文件的权限

1、命令chgrp: 可以更改文件的所属组,其格式为:chgrp[组名][文件名],示例如下:

#chgrp testgroup dir2

如果想级联更改子目录以及子文件,加-R选项可以实现,如:

#chgrp -R testgroup dir2

2、命令chown: 可以更改文件的所有者,其格式为:chown[-R]账户名文件名或者chown[-R]账户名:组名 文件名。这里的-R选项只适用于目录,作用是级联更改,即不仅更改当前目录,连目录里的目录或者文件也全部更改。如:

#chown user1 dir3

3、命令chmod: 用于改变用户对文件/目录的读写执行权限,其格式为:chomd[-R]xyz 文件名(这里的xyz表示数字)。

Linux使用数字代替rwx,r等于4,w等于2,x等于1,-等于0。

-R选项作用等同于chown命令的-R选项。在Linux系统中,一个目录默认权限为755,一个文件默认权限为644。

4、命令umask: 用于改变文件的默认权限,其格式为:umask xxx(这里的xxx代表三个数字)。查看umask的值,只需命令行输入umask即可。默认情况下,root的umask为022,而一般使用者则为002。

5、修改文件的特殊属性

  • 命令chattr:格式为:chattr[±=][Asaci][文件或者目录名],其中,+、-、=分别表示增加,减少,设定。

  • A:表示文件或目录的atime将不可修改。

  • s:会将数据同步写入磁盘中。

  • 表示只能追加不能删除,非root用户不能设定该属性。

  • 表示自动压缩该文件,读取时会自动解压。

  • 表示文件不能删除、重命名、设定链接、写入以及新增数据。

2.命令lsattr:该命令用于读取文件或者目录的特殊权限,其格式为:lsattr[-aR][文件/目录名]。

  • -a:连同隐藏文件一同列出。

  • -R:连同子目录的数据一同列出。

3.set uid、set gid和sticky bit

  • setuid: 在执行时具有文件所有者的权限.
  • setgid: 设置目录. 一个目录被标上setgid位,此目录下创建的文件继承该目录的属性.
  • sticky bit: 该位可以理解为防删除位. 设置sticky
    bit位后,就算用户对目录具有写权限,但也只能添加文件而不能删除文件。

在linux下搜索文件

1、用which命令查找可执行文件的绝对路径: which只能用来查找PATH环境变量中出现的路径下的可执行文件。如:

#which vi

#which cat

2、用whereis命令查找文件: 通过预先生成的一个文件列表库查找与给出的文件名相关的文件,其格式为:whereis[-bms][文件名称],各选项含义如:

  • -b:只查找二进制文件。
  • -m:只查找帮助文件(在man目录下的文件)。
  • -s:只查找源代码文件。

4、使用find搜索文件: 其格式为:find[路径][参数]。

  • -atime +n/-n:表示访问或执行时间大于或校园n天的文件。
  • -ctime +n/-n:表示写入、更改inode属性的时间大于或小于n天的文件。
  • -mtime +n/-n:表示写入时间大于或小于n天的文件,该参数用得最多。
  • -name filename表示直接查找该文件名的文件。
  • -type filetype表示通过文件类似查找文件。
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值