1

Определяем свободное место на диске:

 Консоль:
rizado@MARS:~$ df --block-size=1048576  /
S.ficheros     bloques de 1M Usados Disponibles Uso% Montado en
/dev/sda2              40190  30738        9026  78% /
rizado@MARS:~$

Здесь вопросов нет, всё понятно. А вопрос − как выбрать значение 9026, соответствующее свободному месту, и присвоить это переменной bash? Со скриптом вроде как справляюсь, а вот этот момент неясен.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

2 (19.08.2019 16:52:59 отредактировано ValentinK)

Rizado пишет:

А вопрос − как выбрать значение 9026, соответствующее свободному месту, и присвоить это переменной bash? Со скриптом вроде как справляюсь, а вот этот момент неясен.

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

Fedora 35 KDE.
Linux is great and super! Long live rock'n'roll! Opera and libretto.
По-русски калинка-малинка моя! Люблю оливье и винегрет.
Yours sincerely, wasting away! Salute people!

3

ValentinK, кто сказал «мяу», в смысле, «не получится»? ab
Сделал так:

 Консоль:
df --block-size=1048576 / | awk '{if (NR > 1) {print $4}}'

Теперь подумаю, как загнать этот вывод в переменную bash и там дальше обрабатывать.

ᛈᚺ'ᚾᚷᛚᚢᛁ ᛗᚷᛚᚹ'ᚾᚨᚠᚺ ᚲᛏᚺᚢᛚᚺᚢ ᚱ'lᚷᛖᚺ ᚹᚷᚨᚺ'ᚾᚨᚷᛚ ᚠᚺᛏᚨᚷᚾ

Asus Prime B460M-K, i5-10500, Intel 630 UHD + NVIDIA GeForce RTX3060, DDR4 32 GB, SSD 1TB + HDD 2TB | Linux Mint 22.3 Cinnamon + Windows 11

4

Не оно?
-v var=value — позволяет объявить переменную и задать её значение по умолчанию, которое будет использовать awk.

5

 Консоль:
size=$(...)