
Use it with the less prefix since the output is big and quickly vanishes beyond the top of the screen.Īs with the previous command, we see that the output of /proc/cpuinfo provides information about the processor, vendor, cores and frequency. Another favorite of system administrators is /proc/cpuinfo.

Let’s start with lscpu, a favorite of both users and system administrators.Ī quick glance at the above output tells us that our Linux box has an Intel, quad-core, 64-bit processor running at 2000MHz.Ģ. We’ll dig down for information on the CPU vendor, check if it’s 32-bit or 64-bit, look for the number of cores, frequency, cache size and more.ġ. In this post, we’ll take a look at a bunch of commands that provide details about the CPU inside a Linux computer. As we have set virt to No Virtualisation at the beginning, no matches will print No Virtualisation.The command line interface is so versatile that you can find considerable information about even the hardware side of your Linux server or desktop. A match will signified by the RSTART variable not being 0 and so we check this to find the type of virtualisatiion being utilised. When searching for lines beginning with flag, we search for strings svn or vmx using awk's match function. At the end, print the data in the required format using the variables created. Using /proc/cpuinfo and free -mh along with awk, search for the strings required, using : as the field delimited, set variables accordingly, splitting the output of free -mh further into an array called arr based on " " as the delimiter. Power management: ts ttp tm stc 100mhzsteps hwpstate Model name : AMD Athlon(tm) II Neo N36L Dual-Core Processorįlags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm 3dnowext 3dnow constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid pni monitor cx16 popcnt lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a 3dnowprefetch osvw ibs skinit wdt nodeid_msr hw_pstate vmmcall npt lbrv svm_lock nrip_saveīugs : tlb_mmatch apic_c1e fxsave_leak sysret_ss_attrs null_seg amd_e400 spectre_v1 spectre_v2Īddress sizes : 48 bits physical, 48 bits virtual $ free -m -h total used free shared buff/cache available

I have spent some time searching for methods, but without luck, and maybe this is an interesting generic problem as involves taking the format of tables that a lot of info is held in and extracting as required so has some generic application.

I would like to also combine this info with that of /proc/meminfo or free -mh, so: "AMD Athlon(tm) II Neo N36L Dual-Core Processor, 1300 MHz, 2 cores, 4.7 GB Memory (1.8 GB Free), SVM-Virtualization" with the below output, this would look like (with "1300.000" rounded to "1300") "AMD Athlon(tm) II Neo N36L Dual-Core Processor, 1300 MHz, 2 cores, VMX-Virtualization" (or "SVM-Virtualization" or "No Virtualization")

I would like to extract something like the following on a single line:, MHz, cores, Į.g.
CAT CPUINFO HOW TO
I know that this sort of thing can often be a very simple trick for sed/awk experts (I don't know how to approach this
CAT CPUINFO INSTALL
I would like to pluck info from /proc/cpuinfo and /proc/meminfo (or free -m -h) "why not just ' yum install some-great-tool'?" is not ideal as all of this information is freely available to us right in /proc.
CAT CPUINFO PORTABLE
The problem that I'm trying to solve is to produce portable output that I can display on all of the servers in our environment to show basic info at login using generic information on all CentOS / Red Hat systems.
