У вас может быть некоторая нечетная настройка в /etc/default/locale. «UTF-8» не является полным именем локали.
Команда df фактически принимает аргумент, идентифицирующий нужную вам файловую систему. Таким образом, вы можете использовать, например, df /home или df /dev/sda3.
Если вы собираетесь анализировать выходные данные для скрипта, вы захотите использовать df -P, чтобы гарантировать, что он никогда не обертывает несколько линий. Например, вы можете использовать df -Ph /home | tail -n +2 (но если вы разбираете вывод для скрипта, помните о возможности имен файлов с пробелами в них)
Вы можете использовать комбинацию head и tail:
df -h | head -3 | tail -1
Или
df -h | tail -n +3 | head -1
Но обратите внимание, что df позволяет фильтровать выход из параметров самого df, вы должны посмотреть на них прежде, чем использовать любую внешнюю команду.
Проверить man df.
Awk - инструмент для обработки текста, поэтому он подходит для этой задачи
df -h | awk 'NR == 3'
Я предполагаю, что вы не обязательно ищете третью строку, но для строки, которая либо упоминает конкретный диск (например, /dev/sda3), либо конкретную точку монтирования (например, /home).
[d1 ] Вместо того, чтобы просто отображать третью строку, которая небезопасна, потому что порядок вывода может измениться, и вы можете получить другой результат, вы можете фильтровать вывод по контенту и отображать только строки, которые соответствуют определенному шаблону или содержат ключевое слово. [ ! d1]Ваш инструмент для этого - grep.
Например, если вы хотите строку о устройстве /dev/sda3, вы вводите:
df -h | grep '/dev/sda3'
Если вы хотите, чтобы строка упоминала ваш домашний каталог как точку монтирования, используйте:
df -h | grep '/home'
Вы также можете использовать perl:
df -h | perl -ne 'print if $.==3'
$. - это номер текущей строки, поэтому вы можете распечатать N-ю строку с помощью perl -ne 'print if $.==N'.
Моя первая идея была бы конструкцией head-tail.
Пример:
df -h | head -3 | tail -1
head -3 заставляет вывод останавливаться после трех строк, а tail -1 выводит только последнюю строку.
В качестве альтернативы, если вы знаете, как будет выглядеть вывод, вы также можете использовать grep для поиска строк, содержащих определенную строку.