Yanıtlar:
Kullanabilirsiniz
openssl dgst -sha256 <file>
MacOS 10.14 (Mojave) üzerindeki LibreSSL 2.6.4'te test edilmiştir.
Mojave'den önce openssl sha -sha256 <file>veya kullanabilirsiniz openssl sha256 <file>.
Openssl sha komutu için komut satırı seçeneklerini kontrol etmek için: openssl sha -help.
OS X, bir shasum komutuyla birlikte gelir .
> which shasum
/usr/bin/shasum
Kullanabilirsiniz:
> shasum -a 256 <file>
Daha fazla detay:
> shasum --help
Usage: shasum [OPTION]... [FILE]...
Print or check SHA checksums.
With no FILE, or when FILE is -, read standard input.
-a, --algorithm 1 (default), 224, 256, 384, 512, 512224, 512256
-b, --binary read in binary mode
-c, --check read SHA sums from the FILEs and check them
-t, --text read in text mode (default)
-p, --portable read in portable mode
produces same digest on Windows/Unix/Mac
-0, --01 read in BITS mode
ASCII '0' interpreted as 0-bit,
ASCII '1' interpreted as 1-bit,
all other characters ignored
The following two options are useful only when verifying checksums:
-s, --status don't output anything, status code shows success
-w, --warn warn about improperly formatted checksum lines
-h, --help display this help and exit
-v, --version output version information and exit
When verifying SHA-512/224 or SHA-512/256 checksums, indicate the
algorithm explicitly using the -a option, e.g.
shasum -a 512224 -c checksumfile
The sums are computed as described in FIPS-180-4. When checking, the
input should be a former output of this program. The default mode is to
print a line with checksum, a character indicating type (`*' for binary,
` ' for text, `?' for portable, `^' for BITS), and name for each FILE.
Report shasum bugs to mshelor@cpan.org
which shashumhiçbir şey
/usr/binisteğe bağlı şeylerle kirlenmemesini diliyorum . Bugün olayın böyle olduğunu doğrulamalıyım. Eğer gerçekten XCL kurulumundan geldiyse cevabı güncelleyecektir.
shasumfarklı bir karma döndürür openssl sha -sha256 <file>(ikincisi doğru karma olur). Neden bir fikrin var mı?
shasum, bir perl betiğidir, Digest::SHAkarma değerini hesaplamak için kullanılır. Aynı dosya için ben de kullanarak tam olarak aynı SHA olsun shasumveya opensslbir için SHA-256karma hesaplama. Bakınız: gist.github.com/ianchesal/82a064b8971eb5e717ce84f3ded6dbfd
@ John'un yararlı cevabını açıklığa kavuşturmak için - verilen bir hash ile tek bir komutta dosyasını karşılaştırmanızı sağlar:
Giriş shasum -a 256 -c <<<,
isteğe bağlı bir boşluk ve ardından
tek bir kene (ardından '),
karşılaştırma karma, ardından
, bir boşluk ve ardından
ilk karma nasıl oluşturulduğuna göre, bir modu karakteri bunu takiben
karma, -tseçenekle veya seçenek olmadan oluşturulduysa, hiçbir şey (metin modu, varsayılandır)
Yıldız işareti ( *), eğer hash -b(binary mode) ile yaratılmışsa
soru işareti ( ?), karma -p(taşınabilir mod) ile oluşturulmuşsa
caret ( ^), karma -0(bit modu) ile oluşturulmuşsa
ardından dosya yolunu
izledi , ardından bir kapanış tekli kene ( ').
Aşağıdaki arıza gibi, hash ve filepath parçalarının çevresini sınırlandıran parenler ve isteğe bağlı "mod karakteri" kısmı etrafındaki köşeli parantezler. ( Parenleri veya braketleri gerçek hayata dahil etmeyin - parçaları görmeyi kolaylaştırmak için buradalar! )
shasum -a 256 -c <<< '(hashToCompare) [mode character](filepath)'
Bozuldu :
Asıl shasum komutushasum -a 256 -c
-a 256söyler shasumkullanmak SHA256 .
-cshasumsağlanan girişi "kontrol" etmesini söyler .
<<<Bir "yönlendirme" operatörü olarak adlandırılan bir Unix / Linux özel karakter setidir. Önceden bir komuta bir şey beslemek için. Kullanarak, shasumkomutun girdi olarak kullanması için bir dizi bilgi sağlayacağımızı söylüyoruz .
Giriş bilgisi dizesinin, açılacak ve kapanması gereken tek keneler ( 'some string here'veya bu durumda kontrol edilecek karma, mod karakteri ve dosya yolu) olması gerekir.
Karma dize içinde parçası özel bir şey gerekmez - ama bir boşluk gelmelidir.
Mod karakter parçası şey, bir yıldız (olabilir *), bir soru işareti ( ?) veya bir şapka ( ^). Bu shasum, karma değerin üretildiği modu söyler . (Not: metin modunu temsil eden hiçbir karakter shasumvarsayılan değildir.)
Filepath kısmı dosyaya fiili yolu kontrol edilmelidir.
Bu nedenle, söz konusu SHA-256 değerine karşı belirli bir MAMP indirme dosyasını kontrol eden gerçek hayattan bir örnek . Mod karakter çalışması için bu kontrol için gerekli:*
shasum -a 256 -c <<< 'f05ede012b8a5d0e7c9cf17fee0fa1eb5cd8131f3c703ed14ea347f25be11a28 *MAMP_MAMP_PRO_5.2.pkg'
Not: Bu komutun sonucu (örnek dosyam için) ya -
TAMAM:
MAMP_MAMP_PRO_5.2.pkg: Tamam
veya
BAŞARISIZ OLDU:
MAMP_MAMP_PRO_5.2.pkg:
Başarısız shasum: UYARI: 1 hesaplanan sağlama toplamı eşleşmedi
shasum -c <<< '7cb77378a0749f2a9b7e09ea62ffb13febf3759f *sample.txt'mesajı döndürür *sample.txt: FAILED open or read. Yıldız olmadan sample.txt: OK. Yıldızın henüz başka bir yerde kullanımının temelini bulamadım. Aydınlatabilir misin?
--binaryisteğe bağlı olarak) oluşturulduğunu gösteriyor mu? Man sayfasından: "Kontrol yapılırken, giriş bu programın eski bir çıktısı olmalıdır. Varsayılan mod, sağlama karakterini içeren bir karakter, türünü belirten bir karakter yazdırmaktır ( *ikili metin için,` `metin Uiçin, UNIVERSAL ^için, BITS, ?taşınabilir için) ve her DOSYA için ad. " Yani, sağlama toplamı ve dosya adı arasındaki karakterler sağlama toplamı oluşturulduğunda ayarlanan moda mı bağlı?