windows:icacls命令行修改文件使用默認繼承的ACL及ant腳本實現(xiàn)過程
windows:icacls命令行修改文件使用默認繼承的ACL及ant腳本
windows下修改文件或文件夾的權(quán)限是使用icacls命令,關(guān)于使用icals的詳細說明參見icacls的命令行幫助。
如果你只是簡單的想讓文件繼承來自文件夾默認ACL,就很方便 ,執(zhí)行下面的命令就可以了
icacls filename /reset
下圖是icals中命令行說明
紅框標注就是上面命令的解釋

使用ant 腳本命令replaceregexp修改文件內(nèi)容的時候會有個毛病:
修改后的文件會失去來自文件默認ACL
比如原本文件所在的文件夾是everyone可讀取的,那么用replaceregexp修改文件的內(nèi)容后,everyone的訪問權(quán)限會丟失,所以就需要用icacls來修改文件的權(quán)限(我也是因為這個問題才研究icacls命令的)。
于是我們可以在ant腳本中如下方式調(diào)用icacls來修改文件權(quán)限
<!--搜索替換文件中的字符串,修改database.sql.ext.dir指向的目錄位置-->
<replaceregexp match='(property\s+name="database.sql.ext.dir"\s+value=")(\S+)("\s*)' replace="\1$${release.facedatabase.dir}\3" flags="i" byline="true" encoding="utf-8">
<fileset dir="${dir_of_file}" includes="${filename}" />
</replaceregexp>
<!--修改文件權(quán)限,讓文件使用默認繼承的ACL-->
<exec executable="cmd" dir="${dir_of_file}" osfamily="windows">
<arg value="/c" />
<arg value="icacls ${filename} /reset" />
</exec>
總結(jié)
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
win11安裝wsl報錯之無法解析服務(wù)器的名稱或地址的問題及解決方法
項目開發(fā)中,需要用到wsl,因此根據(jù)wsl官方(WSL安裝教程)命令?wsl --install 進行wsl的安裝,本文主要是記錄自己在安裝wsl中遇到的問題"無法解析服務(wù)器的名稱或地址"的解決辦法,感興趣的朋友一起看看吧2024-04-04
搭建RocketMQ在本地IDEA開發(fā)調(diào)試環(huán)境教程
這篇文章主要為大家介紹了搭建RocketMQ在本地IDEA開發(fā)調(diào)試環(huán)境的步驟教程詳解有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步2022-02-02
Red Hat6.4環(huán)境下搭建DNS服務(wù)器的全過程
DNS服務(wù)器(Domain Name System Server)是互聯(lián)網(wǎng)中用于將域名(如?www.example.com)解析為IP地址(如?192.0.2.1)的服務(wù)器,它是互聯(lián)網(wǎng)基礎(chǔ)設(shè)施的重要組成部分,本文給大家介紹了Red Hat6.4環(huán)境下搭建DNS服務(wù)器的全過程,需要的朋友可以參考下2026-03-03
open3d?通過vscode+ssh連接遠程服務(wù)器將可視化界面本地顯示的問題
這篇文章主要介紹了open3d通過vscode+ssh連接遠程服務(wù)器將可視化界面本地顯示,本文分步驟給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-07-07
Mac下開啟與關(guān)閉端口轉(zhuǎn)發(fā)的腳本配置方法
這篇文章主要介紹了Mac下開啟與關(guān)閉端口轉(zhuǎn)發(fā)的腳本配置方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下2018-04-04

