我有一堆文件夹我想查找并将组更改为目录名称。将目录组设置为目录名称
/SchoolA/
/SchoolB/
......
/SchoolZZZ/
我想不出它 - 但想是这样的:
find . -type d -exec chgrp {} {} \;
我得到的非法团体的名字,因为它包括./该组。总之,以消除./
需要被类似
find . -type d -exec chgrp NODOTSLASH({}) {} \;
* 编辑 *
我与以下职位的帮助下接近 - 但它仍然打印“ “。目录。我该如何摆脱?
find . \(! -path '^.*' \) -type d -maxdepth 1 | sed -e 's/\.\///g' | awk '{print "\x22"$0"\x22","\x22"$0"\x22"}'
这非常接近 - 但是,空间(我没有指定会在那里)无法正常工作。但是 - 我修改了一些以尝试获得正确的结果 - 但仍不完全正确。感谢您的帮助到目前为止!查看原始帖子,了解我如何修改。再次感谢! – user1453561
添加更多信息给我的答案...这应该解决'点'问题。我已经在我的Mac上测试过它,它似乎正在工作... – iamauser
很好 - 固定了。问题。我还使用了$ 0而不是$ 1,并将它用引号括起来作为我已经有空格的组/文件夹名称。谢谢你的帮助! – user1453561