如何在 xonsh 的 find 命令上使用 -exec?
how to use -exec on the find command with xonsh?
在 xonsh 中,我可以 运行 像这样的 find
命令:
find @(str(path)) -iname "log.txt"
其中路径是一个 pathlib.Path 对象。
但是,我不明白如何在 find
上使用 -exec
和 -execdir
选项:
find @(str(path)) -iname "log.txt" -execdir pwd {} \;
这会导致错误:
SyntaxError: <xonsh-code>:1:5: ('code: @(',)
我查看了 Tutorial — xonsh 0.10.1.dev5.dev5 documentation 并尝试了 @$(...) 和许多其他变体,但均未成功。
编辑:这个版本
find @(str(path)) -iname "log.txt" -execdir pwd '{}' \;
出现此错误:
find: missing argument to `-execdir'
只是在这里添加答案以备将来参考:
这个bash
find ~/.local/lib/python3.8/ -iname "*ygments*pyc" -exec ls -ahtlr {} \;
变成这个xonsh
好像...
find ~/.local/lib/python3.8 -iname "*ygments*pyc" -exec ls -ahltr "{}" ";"
尽管这似乎也有效 :-D :
for i in !(find ~/.local/lib/python3.8 -iname "*ygments*pyc"):
ls -ahtlr @(i.strip())
在 xonsh 中,我可以 运行 像这样的 find
命令:
find @(str(path)) -iname "log.txt"
其中路径是一个 pathlib.Path 对象。
但是,我不明白如何在 find
上使用 -exec
和 -execdir
选项:
find @(str(path)) -iname "log.txt" -execdir pwd {} \;
这会导致错误:
SyntaxError: <xonsh-code>:1:5: ('code: @(',)
我查看了 Tutorial — xonsh 0.10.1.dev5.dev5 documentation 并尝试了 @$(...) 和许多其他变体,但均未成功。
编辑:这个版本
find @(str(path)) -iname "log.txt" -execdir pwd '{}' \;
出现此错误:
find: missing argument to `-execdir'
只是在这里添加答案以备将来参考:
这个bash
find ~/.local/lib/python3.8/ -iname "*ygments*pyc" -exec ls -ahtlr {} \;
变成这个xonsh
好像...
find ~/.local/lib/python3.8 -iname "*ygments*pyc" -exec ls -ahltr "{}" ";"
尽管这似乎也有效 :-D :
for i in !(find ~/.local/lib/python3.8 -iname "*ygments*pyc"):
ls -ahtlr @(i.strip())