递归修改子目录及文件的权限
背景:当我们的虚拟机和windows系统共享windows上的一个目录(记为:A)时,把该目录下的目录(记为B)移动(mv)到linux下的任意目录下,这个目录B及下面的子目录或文件的权限都是rwx(777),这是他们在windows下的权限。因此用ll命令把这些文件列出来时,就会发现明显的不一样,原因就是权限不同。
因此,我写了个bash 脚本,递归的将这些移动过来的文件的权限修改为默认值。代码如下:
#!/bin/bash
# 修改指定目录的子目录或文件到默认权限
# 下面的函数是递归修改子目录及文件的权限,但是还有一种方法就是复制整个目录,权限会自然就设置成默认的了
function chmodDefault()
{
if [ -d "$1" ]; then
chmod 755 "$1"
fi
for i in $1/*
do
if [ -f "$i" ]; then
chmod 644 "$i"
elif [ -d "$i" ]; then
chmod 755 "$i"
chmodDefault "$i"
fi
done
}
if [ "$1" = "" ]; then
echo "Usage: sh $0 <dir>"
else
chmodDefault "$1"
fi
经测试,发现这个脚本还是正确的。但是又发现了另外一种改变移动过来的目录的权限的方法,就是用复制命令(cp),这相当于以当前用户的身份新建目录,所以权限自然地就是默认值了!
如:cp /mnt/hgfs/A/aa /home/zcm/download/
递归修改子目录及文件的权限相关推荐
- Linux 的 chmod 命令,对一个目录及其子目录所有文件添加权限
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. 对一个目录及其子目录所有文件添加权限 命令: chmod 777 -R ./html 给予html目 ...
- Linux对一个目录及其子目录所有文件添加权限
1.chmod指令 chmod是一个改变用户拥有指定文件的权限的命令.r:只读,w:写,x执行.也可以用数字 -rw------- (600) -- 只有属主有读写权限. -rw-r--r-- ( ...
- Linux 修改群组文件夹权限
首先添加群组,进入vim添加group成员 #groupadd groupname #vim /etc/group 然后修改群组文件权限, -R的作用是使得文件夹下的子文件都能有相同的权限 #chgr ...
- linux 对一个目录及其子目录所有文件添加权限
转摘地址:http://blog.csdn.net/u014175572/article/details/50946471 感谢这位朋友的 这个命令
- ubuntu+查看服务器文件夹权限,Ubuntu - 文件夹权限查看与修改
Ubuntu 文件的归属身份有四种: u - 拥有文件的用户(所有者) g - 所有者所在的组群 o - 其他人(不是所有者或所有者的组群) a - 每个人或全部(u, g, o) 1. 查看文件/文 ...
- macOS 查看、修改文件、文件夹权限的命令
1.查看文件/文件夹权限: 1.查看某个文件权限的命令 ls -l + 要查看文件的文件名 1 2.查看某个文件夹里所有文件/文件夹的权限 ls -l + 文件夹名 1 3.如果要查看某个文件夹的权限 ...
- 文件/目录权限相关命令:chmod、chown、umask、lsattr/chattr命令解析
2019独角兽企业重金招聘Python工程师标准>>> 本文索引: 文件/目录权限修改:chmod 预备知识 几种具体用法 重要参数: -R 所有者/所属组修改: chown 几种具 ...
- Linux的常用命令chmod(文件的权限777和755)
Linux的常用命令 一.关于文件权限的基本理论知识 二.关于文件权限的命令 (1)查看文件权限 (2)文件权限的基本知识 (3)关于修改权限的命令 一.关于文件权限的基本理论知识 一个Linux目录 ...
- linux 进程 setuid,Linux SetUID(SUID)文件特殊权限用法详解
在讲解<权限位>一节时提到过,其实除了 rwx 权限,还会用到 s 权限,例如: [root@localhost ~]# ls -l /usr/bin/passwd -rwsr-xr-x. ...
最新文章
- 【SpringMVC】基本概念
- Keepalived实现LVS-DR双机热备_2015101601
- CentOS6.5安装配置
- c语言输出后面空格,新人提问:如何将输出时每行最后一个空格删除
- awk:split()函数、数组、自定义函数
- 自己动手开发编译器(十)miniSharp语法分析器
- 在java中实现类似于.net中的DataTable,请各位看看,这种方法可行吗?
- 【形状检测】基于matlab Hough变换形状检测【含Matlab源码 468期】
- 目的路径太长如哈删除_如何清除winrar中的目标路径记录
- 匈牙利算法及KM算法详解
- 【C语言】输出100内素数
- 台式计算机模拟软件,全国计算机一级Office2010+win7版考试模拟软件
- AutoCAD2007 打开缓慢解决方案
- bigworld源码分析(3)——dbMgr分析
- VR全景为家装赋能,沉浸式体验家装设计效果
- ubuntu服务器登桌面,Ubuntu Server安装桌面环境实现图形化访问 | 聂扬帆博客
- 【学习笔记】要学的东西
- postman里面的mockserver使用方法
- 根据UV风计算风速风向,根据风速与风向计算UV风
- 信息技术发展的趋势是什么?