當前位置:
首頁 > 最新 > 使用 Python 一鍵配置 SVN 賬號和屬組信息

使用 Python 一鍵配置 SVN 賬號和屬組信息

雖然現在 Git 已經很普及,但是我相信用 SVN 的公司仍然不少,那麼作為 SVN 配置管理員的話,就不可避免的涉及到賬號維護的問題,今天我們就說說如何通過 Python 腳本實現用戶的快捷維護。

如果手動維護用戶,一般需要三個步驟:

1.手動添加用戶

2.手動設置屬組

3.通知用戶設置結果

使用腳本後也是三步,但是效率卻大大提升:

1.輸入用戶名

2.輸入要設置的組名

3.按下回車,搞定

這裡面設置用戶和屬組是關鍵點,也是我們需要自動化起來的操作,下面分別給出實現的代碼(代碼部分建議橫屏查看):

這段是創建用戶的代碼,下面做下說明:

cur_file_dir() 函數功能是獲取執行腳本所在路徑;

htpasswd.exe 是從 Apache 目錄拷貝出來的工具,可以在指定文件添加指定的用戶名和密碼信息,命令行使用方法「htpasswd.exe -b [密碼文件] [用戶名] [密碼]」,更多使用說明請 Google;

REP_PATH 是我定義的一個全局變數,是我 SVN 倉庫的根目錄,目錄下會存放用戶和組設置的配置文件;

htpasswd 文件就是上面說的用戶信息存儲文件;

pwd 是我通過隨機數生成的以 sylan215@ 開頭的 13 位密碼;

execut_ret() 函數功能是執行指定程序並返回執行結果的,目前就是執行 htpasswd.exe 添加指定用戶信息;

接著我們來看看設置組信息的代碼:

對這個函數的說明:

本函數功能就是讀取組設置文件 groups.conf,檢查當前用戶是否存在於目標組裡面,如果存在直接返回,否則添加用戶到組裡面;

readfiles() 函數功能是一次讀出目標文件的所有內容;

writetofile() 函數功能是把指定內容寫入指定文件;

下面是最後的統一調用函數,以及入口函數實現:

說明:

sendcontextmail() 函數是公用的郵件通知函數;

統一處理函數可以處理一個用戶添加多個用戶組的情況;

入口函數可以處理多個用戶同時添加的情況,並且做了無限循環,這樣把窗口掛在伺服器上可以隨取隨用了;

上述代碼是基於 Python3.4 驗證通過的,其他版本應該同理;

上述說明是基於 Windows 進行實現的;

上述實現是基於 SVN 自帶的賬號和組管理系統的;

如果是基於 Windows 的賬號和組設置體系,代碼上比這個簡單:

以上,如果覺得有用,請幫忙轉發分享,不甚感激。

關注公眾號,支持作者:


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 Python 的精彩文章:

Pyhton爬蟲實戰-抓取BOSS直聘職位描述和數據清洗
花旗銀行將Python納入分析師培訓體系

TAG:Python |