Одним из способов было бы просто передать его в оболочку:
./script.sh | grep "device" | sh
Простой пример:
$ cat input
echo one
echo two
echo three
$ grep t input | sh
two
three
Попробуйтеinxi
:
$ inxi
CPU: 6-Core Intel Core i7-8700K (-MT MCP-) speed/min/max: 800/800/4700 MHz
Kernel: 5.4.0-52-generic x86_64 Up: 7h 17m Mem: 12886.2/32061.5 MiB (40.2%)
Storage: 6.37 TiB (35.2% used) Procs: 374 Shell: bash 5.0.17 inxi: 3.0.38
Для более подробного вывода
inxi -F
Альтернатива:neofetch
;
$ neofetch
.-/+oossssoo+/-. user@PC
`:+ssssssssssssssssss+:` ----------------
-+ssssssssssssssssssyyssss+- OS: Ubuntu 20.04.1 LTS x86_64
.ossssssssssssssssssdMMMNysssso. Host: MS-7B45 2.0
/ssssssssssshdmmNNmmyNMMMMhssssss/ Kernel: 5.4.0-52-generic
+ssssssssshmydMMMMMMMNddddyssssssss+ Uptime: 7 hours, 20 mins
/sssssssshNMMMyhhyyyyhmNMMMNhssssssss/ Packages: 3626 (dpkg), 15 (snap)
.ssssssssdMMMNhsssssssssshNMMMdssssssss. Shell: bash 5.0.17
+sssshhhyNMMNyssssssssssssyNMMMysssssss+ Resolution: 2560x1440
ossyNMMMNyMMhsssssssssssssshmmmhssssssso DE: GNOME
ossyNMMMNyMMhsssssssssssssshmmmhssssssso WM: Mutter
+sssshhhyNMMNyssssssssssssyNMMMysssssss+ WM Theme: Adwaita
.ssssssssdMMMNhsssssssssshNMMMdssssssss. Theme: Yaru [GTK2/3]
/sssssssshNMMMyhhyyyyhdNMMMNhssssssss/ Icons: Yaru [GTK2/3]
+sssssssssdmydMMMMMMMMddddyssssssss+ Terminal: tilix
/ssssssssssshdmNNNNmyNMMMMhssssss/ CPU: Intel i7-8700K (12) @ 4.700GHz
.ossssssssssssssssssdMMMNysssso. GPU: NVIDIA GeForce GTX 1080
-+sssssssssssssssssyyyssss+- Memory: 10264MiB / 32061MiB
`:+ssssssssssssssssss+:`
.-/+oossssoo+/-.
Оба устанавливаются через apt
.
Я не использую Windows, поэтому не знаю, что systeminfo
может сделать, но вот несколько команд, основанных на снимках экрана, которые я погуглил.
Основная системная информация:hostnamectl
$ hostnamectl
Static hostname: vtrefny-Standard-PC-Q35-ICH9-2009
Icon name: computer-vm
Chassis: vm
Machine ID: 07bb5131d4b54404aedd3c859da18c05
Boot ID: 6bf5dda3c6f3434ea4a249bd34cb0b30
Virtualization: kvm
Operating System: Ubuntu 20.04.1 LTS
Kernel: Linux 5.4.0-48-generic
Architecture: x86-64
Информация ЦП:lscpu
$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
Byte Order: Little Endian
Address sizes: 40 bits physical, 48 bits virtual
CPU(s): 2
On-line CPU(s) list: 0,1
Thread(s) per core: 1
Core(s) per socket: 1
Socket(s): 2
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 94
Model name: Intel Core Processor (Skylake, IBRS)
Stepping: 3
CPU MHz: 2111.996
BogoMIPS: 4223.99
Virtualization: VT-x
Hypervisor vendor: KVM
Информация о памяти:lsmem
$ lsmem
RANGE SIZE STATE REMOVABLE BLOCK
0x0000000000000000-0x000000007fffffff 2G online yes 0-15
0x0000000100000000-0x000000017fffffff 2G online yes 32-47
Memory block size: 128M
Total online memory: 4G
Total offline memory: 0B
Другие инструменты:
lsusb
:устройств, подключенных к USB lspci
:PCI-устройства lshw
:подробная информация об оборудовании /proc/cpuinfo
(файл ):подробная информация о процессоре lsblk
:список блочных устройств df -h
:смонтированная файловая система с указанием размера и свободного места Есть, конечно, больше. Не уверен, что есть один инструмент, который может распечатать всю информацию, но упомянутые мной инструменты установлены по умолчанию, а в Linux/Unix у нас обычно есть один инструмент для одной задачи (см. Философия Unix).