Python 如何使用macports进行干净的重新安装?

Python 如何使用macports进行干净的重新安装?,python,macos,macports,Python,Macos,Macports,如何在完全干净地重新安装端口的同时完全干净地重新安装其所有从属端口?保存当前安装的端口 sudo port list installed | sed 's/ .*//' | sort | uniq > ports.lst 然后卸载所有内容,使结构保持原位 sudo port clean installed sudo port -f uninstall installed 然后使用新的依赖项重新安装所有内容: for package in $(<ports.lst); do sud

如何在完全干净地重新安装端口的同时完全干净地重新安装其所有从属端口?

保存当前安装的端口

sudo port list installed | sed 's/ .*//' | sort | uniq > ports.lst
然后卸载所有内容,使结构保持原位

sudo port clean installed
sudo port -f uninstall installed
然后使用新的依赖项重新安装所有内容:

for package in $(<ports.lst); do sudo port install $package; done
MacPorts wiki(迁移)中以美元为单位的包的

使用以下命令保存已安装端口的列表后:

port -qv installed > myports.txt
并以以下方式将其移除:

sudo port -f uninstall installed
下载并执行restore_ports脚本。(如果从源代码安装MacPorts并使用自定义前缀,则在运行
restore_ports.tcl
时需要使用
-p
选项;请参阅
/restore_ports.tcl-h


这很奇怪。就在几分钟前。这给了我所有已安装的端口。有没有办法只列出依赖关系图的叶子?例如,我不需要知道哪些端口将作为另一个端口的依赖关系安装。我还想指出,这种方法不会保留已安装的变体。使用
port-v安装
或类似的东西,而不是安装的
端口列表
,在我看来会更好。是什么让这个答案比Marc的答案更好?@jvriesem他提供下载一些脚本。如果你可以在这里显示命令,为什么要这样做?@holms:这是真的,尽管脚本是MacPorts开发人员推荐使用的脚本。假设布莱:出于某种原因,他们的脚本不仅仅是这个答案中的命令。(希望如此!:-))这个答案的一个优点是它是透明的。@KirkRoybal:这个链接是这个问题的最终答案,直接来自MacPorts的人。这应该是公认的答案。
curl -O https://svn.macports.org/repository/macports/contrib/restore_ports/restore_ports.tcl
chmod +x restore_ports.tcl
sudo ./restore_ports.tcl myports.txt