create_ln.py同步nginx中两个文件夹的内容

在nginx的sites-avaliable中,增加新文件之后,需要创建软连接到sites-enable里,reload才会生效,所以写了如下脚本:

  • create_ln.py

#!/usr/bin/env python3
import os
from pathlib import Path


def run_and_echo(cmd: str) -> int:
    print('-->', cmd)
    return os.system(cmd)


def main():
    pwd = Path(__file__).resolve().parent
    ps = pwd.glob('*.*')
    target = pwd.parent / 'sites-enabled'
    count = 0
    for i in ps:
        name = i.name
        p = target.joinpath(name)
        if name.endswith('.bak') or name.endswith('.py') or p.exists():
            continue
        print(f'creating ln of {name} ...')
        run_and_echo(f'sudo ln -s {i} {p}')
        count += 1
    if not count:
        print('No need to create soft link.')


if __name__ == '__main__':
    main()

Usage::

chmod +x create_ln.py
sudo mv create_ln.py /etc/nginx/sites-available/
cd /etc/nginx/sites-available/
./create_ln.py
sudo nginx -t
posted @   waketzheng  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示