Удалите строки, содержащие путь к файлу, используя sed

Да, ваш метод подходит.

Но вы можете использовать mpstat для получения более подробной информации.

Он включен в пакет sysstat, и если он у вас не установлен...

На CentOS / RHEL:

sudo yum install sysstat

На Ubuntu / Debian:

sudo apt-get install sysstat

Используйте следующую команду, если у вас нет разрешения на установку пакета

grep 'cpu ' /proc/stat | awk '{usage=($2+$4)*100/($2+$4+$5)} END {print usage "%"}'

1
22.03.2016, 19:34
2 ответа

Используя sed , вы можете:

$ sed -i '\| pattern to match |d' File

Это удалит строки, содержащие шаблон для соответствия в файле .

Используя команду grep, вы можете:

$ echo "$(grep -v "pattern to match" File)" > File

Параметр -v позволяет использовать grep для строк, не содержащих шаблон , для соответствия , который затем перенаправляется обратно в файл.

3
27.01.2020, 23:48

Как я вижу, ваш файл содержит специальный символ / вы можете использовать эту команду, чтобы удалить любую строку, вы должны указать строковую характеристику каждой строки, например, 2-я строка - «uid64»:

sed -i '\|uid64|d' testRun.chk
In my pc it's print this without blank line :
6642a51e0ed5e6f89e5e4090b9aa0fb3  /home/device/eth0/uid
db5c3c9d348ce26169c56901a7606961  /home/device/eth1/dhcp
226c1a53543bddcca5d136fdd5700f4c  /home/device/eth1/ipv4
13b376c06f904b607c2a23bd76115595  /home/device/eth1/netmask

Как видите, второй строки нет, вы можете сделать это для следующей строки «sed -i '\|ipv4|d' testRun.chk» и так далее.

Удачи!

-1
27.01.2020, 23:48

Теги

Похожие вопросы