如何编写脚本来自动编译和安装所有 Moksha 模块?

如何编写脚本来自动编译和安装所有 Moksha 模块?

我有在我的 Sabayon 机器上克隆存储库时,我想做的是编写一个脚本,该脚本将更改为该存储库的每个目录(只是顶级目录,而不是这些目录内的目录)并运行./autogen.sh --prefix=/usr && make && sudo make install.我在想也许这个脚本可以实现我想要的功能:

for i in `find . -type d`
do
  pushd $i
  ./autogen.sh --prefix=/usr && make && sudo make install
  popd
done

但是,唯一的问题是,当我只想要顶级目录(或在前面的示例中)时find . -type d,显示此存储库中的每个目录,包括目录中的目录(例如,它显示tclock/images,即目录images中的目录)。tclocktclock

答案1

我发现这有效:

for i in `find . -maxdepth 1 -type d -exec basename {} \;`
do
  pushd $i
    ./autogen.sh --prefix=/usr && make && sudo make install
  popd
done

不过,从中会弹出一些奇怪的错误消息,所以如果有人有更好的答案,我将非常愿意接受它。

相关内容