Вы можете попробовать это. Это напечатает единственный экземпляр top
с фиксированной шириной и выходами, чтобы вы могли получить вывод.
top -n1 -w80
Вы даже можете направить вывод в файл.
top -n1 -w80 > top_output.txt
file=abcdefghijklm
echo ${file: -10}
defghijklm
Пробел после двоеточия требуется, чтобы отличить это расширение параметра от разновидности ${var:-default}
.
Использование второй переменной:
$ tmp=${file%.*}; echo "${tmp:(-10)}"
1234567890
Использование регулярного выражения:
$ [[ $file =~ (.{10})(\.[^.]*)?$ ]] && echo "${BASH_REMATCH[1]}"
1234567890