我想递归地改变一个目录的组名,我使用os.chown()来做到这一点。但是我在os.chown()中找不到像(chgrp -R)这样的递归标志。在python中是否有任何等效的chgrp -R?
0
A
回答
1
我
写了一个函数来执行chgrp命令-R
def chgrp(LOCATION,OWNER,recursive=False):
import os
import grp
gid = grp.getgrnam(OWNER).gr_gid
if recursive:
if os.path.isdir(LOCATION):
os.chown(LOCATION,-1,gid)
for curDir,subDirs,subFiles in os.walk(LOCATION):
for file in subFiles:
absPath = os.path.join(curDir,file)
os.chown(absPath,-1,gid)
for subDir in subDirs:
absPath = os.path.join(curDir,subDir)
os.chown(absPath,-1,gid)
else:
os.chown(LOCATION,-1,gid)
else:
os.chown(LOCATION,-1,gid)
+0
为什么如此复杂,只能将chgpr -R传递给shell? – mfnalex
2
为什么不把你的命令传递给shell?
os.system("chgrp -R ...")
相关问题
- 1. 是否有任何jQuery.ajaxSuccess等效于AngularJS
- 2. Python IDLE等效于R中的CTRL-R
- 3. str_replace_all()R等效在python
- 4. 在C++中是否有等效的str_replace?
- 5. fortran中的Btest函数,python中是否有任何等价物?
- 6. 在java中是否存在C#Type.GetType()的任何等效语法
- 7. 是否有从蟒中的R带()的等效?
- 8. HTML/CSS中是否存在任何等效的XAML Grid元素?
- 9. 是否有任何与Jboss的ProxyPassReverse/ProxyPass等效的
- 10. 是否有任何ARM等效的英特尔IPP?
- 11. 等效于Python中R的源()
- 12. 是否有:disable_with等效link_to_remote?
- 13. 在EJB 3.0中是否有任何与Spring @Required注解等效的?
- 14. 在SQL Server中是否有任何等效的Oracle INSERT ALL方法
- 15. 在Python中是否有Rake等价物?
- 16. 是否有任何OS X等效于`hcitool`?
- 17. Elixir中是否有python timeit的等效模块?
- 18. LINQ的任何方法是否有效?
- 19. 在R(或Python或Julia)中的数据框的tcl中是否有等价物?
- 20. 在SQL中是否有等效的Excel的PERCENTRANK(列,值)?
- 21. Python中是否有任何operator.unpack?
- 22. 在Python中是否有任何与Perl正则表达式的'\ K反斜杠序列等效的东西?
- 23. 是否和<and>等效于python?
- 24. 在Ruby中是否有任何等价的`to_s`?
- 25. - [R等效的Python“通”语句的
- 26. python的%(从R)的等效函数
- 27. Android API级别7中的requestAudioFocus是否有任何等效函数?
- 28. 在isinstance(value,object)不是True的Python中是否有任何值?
- 29. python是否具有与C#的Enumerable.Aggregate等效的功能?
- 30. Rust是否具有与Python的unichr()函数等效的功能?
正确。手动递归。 –
所以我必须os.walk并使用os.chown()更改每个文件组? –
@FujiClado是的, –