浏览代码

diagnostics: switch to shasum, filter sysinfo using lines

shasum seems more widely available than md5/md5sum, and we don't have to worry about dealing with the different signatures and output formats of md5 and md5sum then.

sysinfo outputs localized message labels, so we can't just grep for "OS Type". But OS is the first thing it outputs, so we can probably just grab those lines by line number. Switched to doing that.
Andrew Janke 9 年之前
父节点
当前提交
46ddd88fe0
共有 1 个文件被更改,包括 7 次插入4 次删除
  1. 7 4
      lib/diagnostics.zsh

+ 7 - 4
lib/diagnostics.zsh

@@ -117,13 +117,16 @@ function _omz_diag_dump_one_big_text() {
 
   # Installed programs
   programs=(sh zsh ksh bash sed cat grep ls find git posh)
+  local progfile="" extra_str="" sha_str=""
   for program in $programs; do
-    local md5_str="" md5="" link_str="" extra_str=""
+    extra_str="" sha_str=""
     progfile=$(builtin which $program)
     if [[ $? == 0 ]]; then
       if [[ -e $progfile ]]; then
-        if builtin whence md5 &>/dev/null; then
-          extra_str+=" $(md5 -q $progfile)"
+        if builtin whence shasum &>/dev/null; then
+          sha_str=($(command shasum $progfile))
+          sha_str=$sha_str[1]
+          extra_str+=" SHA $sha_str"
         fi
         if [[ -h "$progfile" ]]; then
           extra_str+=" ( -> ${progfile:A} )"
@@ -314,7 +317,7 @@ function _omz_diag_dump_os_specific_version() {
       builtin echo "OS Version: $osname $osver build $(sw_vers -buildVersion)"
       ;;
     cygwin)
-      command systeminfo | command grep "^OS Name\|^OS Version"
+      command systeminfo | command head -4 | command tail -2
       ;;
   esac