本文目录导读:

批量修改目录权限可以通过多种脚本实现,以下是几种常见的脚本方法:
Bash Shell 脚本(Linux/Unix)
使用 find 命令批量修改
#!/bin/bash
# 修改指定目录下的所有目录权限为 755
find /path/to/directory -type d -exec chmod 755 {} \;
# 修改指定目录下的所有文件权限为 644
find /path/to/directory -type f -exec chmod 644 {} \;
递归修改目录权限
#!/bin/bash
target_dir="/path/to/directory"
# 只修改目录权限(不修改文件)
find "$target_dir" -type d -exec chmod 755 {} \;
# 同时修改目录和文件权限
find "$target_dir" -type d -exec chmod 755 {} \;
find "$target_dir" -type f -exec chmod 644 {} \;
echo "目录权限修改完成!"
使用 chmod 的 -R 参数(不区分文件和目录)
#!/bin/bash # 递归修改所有文件和目录权限为 755 chmod -R 755 /path/to/directory # 如果需要区分文件权限 chmod -R u+rwX,go+rX /path/to/directory # 这个命令会保持目录可执行,但不给文件执行权限
Python 脚本
#!/usr/bin/env python3
import os
import stat
import sys
def batch_chmod(path, dir_mode=0o755, file_mode=0o644):
"""
批量修改目录和文件权限
:param path: 目标路径
:param dir_mode: 目录权限(默认755)
:param file_mode: 文件权限(默认644)
"""
try:
for root, dirs, files in os.walk(path):
# 修改目录权限
for d in dirs:
dir_path = os.path.join(root, d)
os.chmod(dir_path, dir_mode)
print(f"修改目录权限: {dir_path} -> {oct(dir_mode)}")
# 修改文件权限
for f in files:
file_path = os.path.join(root, f)
os.chmod(file_path, file_mode)
print(f"修改文件权限: {file_path} -> {oct(file_mode)}")
print("权限修改完成!")
except Exception as e:
print(f"错误: {e}")
if __name__ == "__main__":
if len(sys.argv) < 2:
print("用法: python script.py /目标目录路径")
sys.exit(1)
target_path = sys.argv[1]
batch_chmod(target_path)
Windows PowerShell 脚本
# PowerShell 脚本:批量修改目录权限
$targetPath = "C:\TargetDirectory"
# 递归获取所有目录和文件
Get-ChildItem -Path $targetPath -Recurse | ForEach-Object {
if ($_.PSIsContainer) {
# 修改目录权限
$_.Attributes = 'Directory'
# 设置完整权限(这里需要设置具体的 ACL)
$acl = Get-Acl $_.FullName
$permission = "Everyone","FullControl","Allow"
$accessRule = New-Object System.Security.AccessControl.FileSystemAccessRule $permission
$acl.SetAccessRule($accessRule)
Set-Acl $_.FullName $acl
Write-Host "已修改目录: $($_.FullName)"
} else {
# 修改文件权限(示例:只读权限)
$_.Attributes = 'ReadOnly'
Write-Host "已修改文件: $($_.FullName)"
}
}
实用的组合脚本
#!/bin/bash
# 交互式批量修改目录权限脚本
echo "=== 批量目录权限修改工具 ==="
# 获取目标路径
read -p "请输入目标目录路径: " target_dir
if [ ! -d "$target_dir" ]; then
echo "错误:目录不存在!"
exit 1
fi
# 选择权限模式
echo "请选择权限模式:"
echo "1) 目录 755,文件 644(推荐)"
echo "2) 目录 777,文件 666(开放权限)"
echo "3) 目录 700,文件 600(私有权限)"
echo "4) 自定义权限"
read -p "请选择 (1-4): " choice
case $choice in
1)
dir_perm=755
file_perm=644
;;
2)
dir_perm=777
file_perm=666
;;
3)
dir_perm=700
file_perm=600
;;
4)
read -p "输入目录权限 (如 755): " dir_perm
read -p "输入文件权限 (如 644): " file_perm
;;
*)
echo "无效选择!"
exit 1
;;
esac
# 确认执行
echo "即将修改 $target_dir 下的所有目录权限为 $dir_perm,文件权限为 $file_perm"
read -p "确认执行?(y/n): " confirm
if [ "$confirm" = "y" ] || [ "$confirm" = "Y" ]; then
find "$target_dir" -type d -exec chmod "$dir_perm" {} \;
find "$target_dir" -type f -exec chmod "$file_perm" {} \;
echo "✅ 权限修改完成!"
else
echo "❌ 操作已取消"
fi
使用说明
- 保存脚本:将上述脚本保存为
.sh(Linux)或.py(Python)文件 - 添加执行权限(Linux):
chmod +x script.sh
- 运行脚本:
./script.sh /目标目录路径
注意事项
- ⚠️ 修改系统目录权限可能导致系统不稳定
- 💾 建议先备份重要数据
- 🔒 避免将目录权限设置为 777(完全开放)
- 📂 确保有足够的权限执行修改操作(可能需要 sudo)
选择哪种脚本取决于你的操作系统和具体需求,Linux/Unix 环境下建议使用 Bash 脚本,Windows 环境使用 PowerShell 或 Python 脚本。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播