Yanıtlar:
Ben monte zorunda kaldı ve kopyalamak .appiçin /Applicationsklasöre. Etcher.app için:
@Trojanfoe dediği gibi ilk:
sudo hdiutil attach /Users/janatac/Etcher-1.2.1.dmg
Sonra
sudo cp -R /Volumes/Etcher\ 1.2.1/Etcher.app /Applications
Daha sonra uygulamanızı /Applicationsklasörde bulundurun
Birimi ayırmayı unutma:
sudo hdiutil unmount /Volumes/Etcher\ 1.2.1/
Bir blog gönderisinden gelen talimatları okuduktan sonra çalışmaya başladı .
Yüklemeyi başlatmak isterseniz, .dmgdosyanın adı, oluşturulan Birimin adı, uygulamanın adı ve çıkarılması gereken aygıtın adı farklı olabileceğinden, birkaç adım daha gerekir. Artı, içinde boşluklar da olabilir.
Ayrıca .dmg, içinde bir .appdosya veya bir .pkgdosya olabilir ve bunlar farklı davranış gerektirir.
Uzak bir URL'den bir dmg yüklemek için bir bash işlevi:
# usage: installdmg https://example.com/path/to/pkg.dmg
function installdmg {
set -x
tempd=$(mktemp -d)
curl $1 > $tempd/pkg.dmg
listing=$(sudo hdiutil attach $tempd/pkg.dmg | grep Volumes)
volume=$(echo "$listing" | cut -f 3)
if [ -e "$volume"/*.app ]; then
sudo cp -rf "$volume"/*.app /Applications
elif [ -e "$volume"/*.pkg ]; then
package=$(ls -1 "$volume" | grep .pkg | head -1)
sudo installer -pkg "$volume"/"$package" -target /
fi
sudo hdiutil detach "$(echo "$listing" | cut -f 1)"
rm -rf $tempd
set +x
}
Not: Programı kurmak için çalışan .dmgbir .appdosyanız varsa, tekrar farklı bir şey yapmanız gerekecek.
hdiutil: detach failed - No such file or directory
Komutu deneyebilirsin open disk://host.tld/image.dmg.
openhiçbir şey yapmadım, sadece hata mesajı olmadan çıkın.
open path/to/file.dmgdisk://host.tld/
Docker.dmgve<image>.pkgişe yaramadım ki hiçbir işe yaramadı