引用「find -execdir test [command]」的指令 (Bash)

引用「find -execdir test [command]」的指令 (Bash)

git fetch如果有遠端(=git remote非空),我想在 git repos 中執行以下命令:

find -name .git -execdir test $(git remote) \; -execdir git fetch
                              ^^^^^^^^^^^^^
                              How to quote/escape/mask this?

嘗試了很多不起作用的變體,例如"$(git remote)"'$(git remote)',,,,,...\$\(git remote\)'"$(git remote)'"

答案1

嘗試這個:

find -name .git -execdir sh -c 'test $(git remote)' \; -execdir git fetch \;

因為無論如何都會啟動一個 shell,你甚至可以這樣做:

find -name .git -execdir sh -c 'test $(git remote) && git fetch' \;

相關內容