linux递归参数-R(r)和-p的区别

在linux系统中创建、复制、删除目录或文件时,常常会用到递归参数。常用的递归参数有-p,-r,-P等。为方便初学者学习、分辨与记忆,将其分类整理如下。

一般常用到递归的命令有:mkdir、cp、rm、ls、grep、chmod、chown等。

而mv命令没有递归参数,所有用mv命令移动(重命名)文件夹时,不需要参数。

常见递归有两种:

一是从指定目录向上级目录递归。使用-p参数,意为parents,代表命令mkdir等

       如:执行mkdir./tmp/longya/file/test/命令创建test目录。

       1.如果要创建test目录,要先确定其父目录,即file目录,是否存在。

       2.如果存在,则创建test目录。

       3.如果不存在,那么就需要创建其父目录(parents),即file目录。

       4.如果要创建file目录前,要先确定其父目录,即longya目录,是否存在。之后一直重复第1,2,3步,直到找到最上一级存在的目录,再反过来自上而下进行目录的创建,完成命令的执行。

       这种向上递归的方式,用-p参数。

二是从指定目录向其下级目录递归。使用-r参数,意为recursive,代表命令cp,rm,ls等

       如:执行cp ./tmp ./longya命令复制tmp目录为longya

       1.如果要复制tmp目录,就需要复制其下的longya目录。

       2.如果要复制longya目录,就需要复制其下的file目录。

       3.重复1,2步,直到完成工作。

       这种向下的递归方式,用-r或-R参数。

       其中ls命令的-r参数被反向排序功能使用reverse,所以使用-R参数做递归。

       而chmod、chown等没有-r的冲突而直接采用-R参数表示递归的命令

所以在修改用户权限时使用,先修改上层目录权限,然后才是目录下的文件权限修改。

转载自:巧记linux常用命令中的递归参数-r(R)和-p_longyamiao的专栏-程序员宝宝_linux递归 - 程序员宝宝

 

  • 9
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值