Ця відповідь намагається вирішити наступні заняття yves :
Я вважаю за краще не мати псевдонім для кожної комбінації варіантів (1)
і
хоча воно показує червоне значення "/" (2)
та (3)
додати важливий фрагмент інформації до різного виводу, це dfрядок заголовка, який змінюється відповідно до наданих прапорів.
(1) Вам потрібно function, тому що за визначенням він бере аргументи. І це дуже просто визначити та використовувати, як ви дізнаєтесь нижче.
(2) червоний /утворюється grep --color, що є загальним псевдонімом grep(ви можете перевірити це, запустивши alias).
код
function df1
{
df $* | sed -n '1p;/^\//p;'
}
Наведені вище рядки призначені для поліпшення читабельності, ви можете замінити їх пробілом.
Скопіюйте та вставте цей фрагмент безпосередньо в інтерактивний сеанс bash або, ще краще, додайте його до свого ~/.bashrc.
Приклад використання
$ df1
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/disk1 487358464 316093104 171009360 65% /
/dev/disk2 524032 302620 221412 58% /Volumes/Packer
$ df1 -hT
Filesystem Type Size Used Avail Use% Mounted on
/dev/disk1 hfs 465G 302G 164G 65% /
/dev/disk2 hfs 512M 296M 217M 58% /Volumes/Packer
$ df1 -hT .
Filesystem Type Size Used Avail Use% Mounted on
/dev/disk1 hfs 465G 302G 164G 65% /
Що це робить
Функція df1викликає, dfякими аргументами ви її передаєте, і передає ( |) висновок sed, на який викликається -nавтоматичне друк простору шаблону. Решта виражає "скрипти" sed, насправді два:
- сценарій
1pдрукує 1-й рядок, який у нашому випадку - dfзаголовок (я використовую те ж саме для psтрубопроводів),
- скрипт
/^\//pвідповідає будь-якому рядку, починаючи з цього /, а потім друкує його
; відокремлює 2 сценарії sed
df --type ntfsне показує розділ 5 ntfs і тому пропускає їх у результаті для мене