From 387079d034878b54fb17602ce2eb250af195eb38 Mon Sep 17 00:00:00 2001 From: dudaodong Date: Wed, 27 Jul 2022 15:27:39 +0800 Subject: [PATCH] feat: os.go, add GetOsBits --- system/os.go | 6 ++++++ system/os_test.go | 10 ++++++++++ 2 files changed, 16 insertions(+) diff --git a/system/os.go b/system/os.go index 91a1cb9..5b63c07 100644 --- a/system/os.go +++ b/system/os.go @@ -70,3 +70,9 @@ func ExecCommand(command string) (stdout, stderr string, err error) { return } + +// GetOsBits get this system bits 32bit or 64bit +// return bit int (32/64) +func GetOsBits() int { + return 32 << (^uint(0) >> 63) +} diff --git a/system/os_test.go b/system/os_test.go index d70813f..16f3eb5 100644 --- a/system/os_test.go +++ b/system/os_test.go @@ -60,3 +60,13 @@ func TestExecCommand(t *testing.T) { assert.IsNotNil(err) } } + +func TestGetOsBits(t *testing.T) { + osBits := GetOsBits() + switch osBits { + case 32, 64: + t.Logf("os is %d", osBits) + default: + t.Error("os is not 32 or 64 bits") + } +}