Ejemplo n.º 1
0
            /// <summary>
            /// 获取操作系统
            /// </summary>
            /// <returns></returns>
            public static string OperatingSystem()
            {
                string os = null;

                try
                {
                    if (File.Exists("/etc/os-release"))
                    {
                        var list = FileTo.ReadText("/etc/os-release").Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
                        os = list.FirstOrDefault(x => x.Contains("PRETTY_NAME")).Split('"')[1];
                    }
                    else if (File.Exists("/etc/redhat-release"))
                    {
                        os = FileTo.ReadText("/etc/redhat-release");
                    }
                    else if (File.Exists("/etc/lsb-release"))
                    {
                        var list = FileTo.ReadText("/etc/lsb-release").Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries);
                        os = list.FirstOrDefault(x => x.Contains("DESCRIPTION")).Split('"')[1];
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex);
                }
                return(os.Trim(Environment.NewLine.ToCharArray()));
            }
Ejemplo n.º 2
0
            /// <summary>
            /// 获取型号
            /// </summary>
            /// <returns></returns>
            public static string Model()
            {
                try
                {
                    var model = FileTo.ReadText("/sys/class/dmi/id/product_name")?.Trim();

                    return(model);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("/sys/class/dmi/id/product_name");
                    Console.WriteLine(ex);
                }
                return(null);
            }
Ejemplo n.º 3
0
            /// <summary>
            /// 运行时长
            /// </summary>
            /// <returns></returns>
            public static long RunTime()
            {
                try
                {
                    var uptime = FileTo.ReadText("/proc/uptime");
                    var pitem  = Convert.ToDouble(uptime.Split(' ')[0]);

                    var pvalue = Convert.ToInt64(pitem * 1000);;

                    return(pvalue);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("/proc/uptime");
                    Console.WriteLine(ex);
                }
                return(0);
            }
Ejemplo n.º 4
0
            /// <summary>
            /// 获取 /proc/meminfo
            /// </summary>
            /// <param name="pkey"></param>
            /// <returns></returns>
            public static long MemInfo(string pkey)
            {
                try
                {
                    var meminfo = FileTo.ReadText("/proc/meminfo");
                    var pitem   = meminfo.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries).FirstOrDefault(x => x.StartsWith(pkey));

                    var pvalue = 1024 * long.Parse(pitem.Replace(pkey, "").ToLower().Replace("kb", "").Trim());

                    return(pvalue);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("/proc/meminfo");
                    Console.WriteLine(ex);
                }
                return(0);
            }
Ejemplo n.º 5
0
            /// <summary>
            /// 获取 /proc/cpuinfo
            /// </summary>
            /// <param name="pkey"></param>
            /// <returns></returns>
            public static string CpuInfo(string pkey)
            {
                try
                {
                    var meminfo = FileTo.ReadText("/proc/cpuinfo") + Environment.NewLine + CmdTo.Execute("lscpu").CrOutput;
                    var pitem   = meminfo.Split(Environment.NewLine.ToCharArray(), StringSplitOptions.RemoveEmptyEntries).FirstOrDefault(x => x.StartsWith(pkey, StringComparison.OrdinalIgnoreCase));

                    var pvalue = pitem.Split(':')[1].Trim();

                    return(pvalue);
                }
                catch (Exception ex)
                {
                    Console.WriteLine("/proc/cpuinfo");
                    Console.WriteLine("lscpu");
                    Console.WriteLine(ex);
                }
                return(null);
            }