Я установил NodeJS из файла pkg на свой Mac. Теперь мне нужно его удалить. Подскажите пожалуйста как это сделать. Я пытался удалить файлы из этого списка:
lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom
Но узел все еще на моем компьютере.
Я установил NodeJS из файла pkg на свой Mac. Теперь мне нужно его удалить. Подскажите пожалуйста как это сделать. Я пытался удалить файлы из этого списка:
lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom
Но узел все еще на моем компьютере.
Ответы:
Я побежал:
lsbom -f -l -s -pf /var/db/receipts/org.nodejs.pkg.bom \
| while read i; do
sudo rm /usr/local/${i}
done
sudo rm -rf /usr/local/lib/node \
/usr/local/lib/node_modules \
/var/db/receipts/org.nodejs.*
Закодировано в сущности 2697848
Обновление
Кажется, .bom
имя файла квитанций могло быть изменено, поэтому вам может потребоваться заменить его org.nodejs.pkg.bom
на org.nodejs.node.pkg.bom
в приведенном выше. Суть была обновлена соответствующим образом.
$ chmod u+x uninstall-node.sh
а затем , $ ./uninstall-node.sh
прежде чем он работал на меня. :)
rm -rf /Users/me/local/bin/node
нестабильным сейчас качающимся узлом!
Если вы установили Node с их веб-сайта , попробуйте следующее:
sudo rm -rf /usr/local/{bin/{node,npm},lib/node_modules/npm,lib/node,share/man/*/node.*}
У меня это сработало, но если у вас есть вопросы, мой GitHub - mnafricano.
/usr/local/lib/dtrace/node.d
/var/db/receipts/org.nodejs.*
Следуя предыдущим сообщениям, вот полный список, который я использовал
sudo npm uninstall npm -g
sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
sudo rm -rf /usr/local/include/node /Users/$USER/.npm
sudo rm /usr/local/bin/node
sudo rm /usr/local/share/man/man1/node.1
sudo rm /usr/local/lib/dtrace/node.d
brew install node
/usr/local/share/doc/node/gdbinit
и/usr/local/share/systemtap/tapset/node.stp
Чтобы удалить «родную» установку node.js, я использовал метод, предложенный в предыдущих ответах sudo npm uninstall npm -g
, с дополнительнымиsudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
.
НО, мне также пришлось удалить следующие два каталога:
sudo rm -rf /usr/local/include/node /Users/$USER/.npm
Только после этого я смог установить node.js с помощью Homebrew.
sudo rm /usr/local/bin/node /usr/local/share/man/man1/node.1 /usr/local/lib/dtrace/node.d
Это полный список команд, которые я использовал (большое спасибо плакатам выше):
sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
sudo rm -rf /usr/local/include/node /Users/$USER/.npm
sudo rm /usr/local/bin/node
sudo rm /usr/local/share/man/man1/node.1
brew install node
Для удаления используйте npm. Просто запуск sudo npm uninstall npm -g
удаляет все файлы. Чтобы избавиться от посторонних вещей, таких как пути к bash, запустите это (из ответа nicerobot):
sudo rm -rf /usr/local/lib/node \
/usr/local/lib/node_modules \
/var/db/receipts/org.nodejs.*
Я взял список AhrB и добавил еще три файла. Вот полный список, который я использовал:
sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
sudo rm -rf /usr/local/include/node /Users/$USER/.npm
sudo rm /usr/local/bin/node
sudo rm /usr/local/share/man/man1/node.1
sudo rm /usr/local/bin/npm
sudo rm /usr/local/share/systemtap/tapset/node.stp
sudo rm /usr/local/lib/dtrace/node.d
# In case you want to reinstall node with HomeBrew:
# brew install node
Небольшой удобный сценарий, расширяющий предыдущие ответы.
#!/bin/bash
# Uninstall node.js
#
# Options:
#
# -d Actually delete files, otherwise the script just _prints_ a command to delete.
# -p Installation prefix. Default /usr/local
# -f BOM file. Default /var/db/receipts/org.nodejs.pkg.bom
CMD="echo sudo rm -fr"
BOM_FILE="/var/db/receipts/org.nodejs.pkg.bom"
PREFIX="/usr/local"
while getopts "dp:f:" arg; do
case $arg in
d)
CMD="sudo rm -fr"
;;
p)
PREFIX=$arg
;;
f)
BOM_FILE=$arg
;;
esac
done
lsbom -f -l -s -pf ${BOM_FILE} \
| while read i; do
$CMD ${PREFIX}/${i}
done
$CMD ${PREFIX}/lib/node \
${PREFIX}/lib/node_modules \
${BOM_FILE}
Сохраните его в файл и запустите:
# bash filename.sh
Мне также пришлось удалить следующие файлы, так как brew пожаловался на установку позже после удаления всех файлов вручную.
/usr/local/share/doc/node/gdbinit
/usr/local/share/systemtap/tapset/node.stp
а затем сделайте следующее
brew install node
brew link node
Следующее сработало после проб и ошибок, и эти каталоги не были доступны для записи, поэтому я удалил их и, наконец, смог заменить node & npm.
sudo rm -rf /usr/local/share/systemtap
sudo rm -rf /usr/local/share/doc/node
sudo rm -rf /usr/local/Cellar/node/9.11.1
brew install node
==> Downloading https://homebrew.bintray.com/bottles/node-9.11.1.high_sierra.bottle.tar.gz
Already downloaded: /Users/xxx/Library/Caches/Homebrew/node-9.11.1.high_sierra.bottle.tar.gz
==> Pouring node-9.11.1.high_sierra.bottle.tar.gz
==> Caveats
Bash completion has been installed to:
/usr/local/etc/bash_completion.d
==> Summary
🍺 /usr/local/Cellar/node/9.11.1: 5,125 files, 49.7MB
node -v
v9.11.1
npm -v
5.6.0
sudo npm uninstall npm -g
это намного безопаснее и проще, чем ответы, приведенные ниже?