Quand j'utilise df
ou mount
, je suis surtout intéressé par les partitions de disques physiques. De nos jours, la sortie de ces commandes est dépassée par les systèmes de fichiers temporaires et virtuels, les groupes de contrôle et d'autres choses qui ne m'intéressent pas régulièrement.
Mes partitions physiques dans la sortie commencent toujours par ' /
', j'ai donc essayé de créer des alias pour df
et mount
:
alias df1="df | egrep '^/'"
alias mount1="mount | egrep '^/'"
Cela fonctionne bien pour mount1
(bien qu'il affiche le ' /
' en rouge), mais df1
je voudrais parfois ajouter l' -h
option df
et je ne peux pas le faire df1 -h
. Je préférerais ne pas avoir d'alias pour chaque combinaison d'options que je souhaiterais utiliser. Dois-je vraiment chercher à définir des fonctions en bash (je préférerais ne pas le faire)? Y a-t-il une meilleure solution pour df1
?
df --type ntfs
ne montre pas la partition 5 ntfs et donc les sauter dans le résultat pour moi--type fuseblk
pour cela--type ntfs
dans mon alias à partir du moment où la prise en charge NTFS était minimale (le moment où vous deviez vérifier le système de fichiers sur votre partition NTFS après le redémarrage de Windows% -)). Mis à jour ma réponse, merci.Vous pouvez définir la fonction comme suit:
Exemple de sortie:
Ici
$@
vous permet de saisir vos arguments! [Notez que cela$@
doit toujours être écrit entre guillemets doubles, sauf si vous avez une raison concrète de ne pas le faire. -ed]la source
Si le passage à un autre
df
est une option, utilisez-le à lapydf
place, car il n'affiche pas les systèmes de fichiers ayant 0 blocs par défaut, et a une jauge, des couleurs et d'autres propriétés activées par défaut. Il fonctionne assez biendf
, et l'original est toujours disponible en utilisant de\df
toute façon.la source
mount
.Cette réponse tente de répondre aux préoccupations suivantes de Yves :
et
et (3) ajouter une information importante à la sortie variable, qui est
df
la ligne d'en-tête qui change en fonction des drapeaux fournis.(1) Vous en avez besoin
function
, car par définition, cela prend des arguments. Et, il est très simple à définir et à utiliser comme vous le découvrirez ci-dessous.(2) le rouge
/
est produit pargrep --color
, qui est un alias commun àgrep
lui-même (vous pouvez le vérifier en exécutantalias
).code
Les sauts de ligne ci-dessus sont destinés à améliorer la lisibilité, vous pouvez les remplacer par de l'espace.
Copiez et collez cet extrait directement dans une session bash interactive ou, mieux encore, ajoutez-le à votre
~/.bashrc
.Exemple d'utilisation
Ce qu'il fait
La fonction
df1
appelledf
avec tous les arguments que vous lui transmettez et dirige (|
) la sortie verssed
, qui est invoquée avec-n
pour supprimer l'impression automatique de l'espace de motif. Le reste exprime les "scripts" sed, deux en fait:1p
imprime la 1ère ligne, qui dans notre cas estdf
l'en-tête de (j'utilise la même chose pour laps
tuyauterie),/^\//p
correspond à n'importe quelle ligne commençant par/
, puis l'imprime;
sépare les 2 scripts sedla source
J'utilise
alias df='df -hT -xtmpfs -xdevtmpfs'
.À peu près nul que vous devez utiliser un alias pour rendre GNU
df
réellement utilisable sur Linux ces jours-ci. Il devrait y avoir une option pour n'afficher que les "vrais" systèmes de fichiers (quoi que cela signifie).En fait,
df -hxtmpfs
prend la plupart des conneries et reste utilisable sans alias. Pas vraiment pire quenetstat -tulnp
ça ... * soupir *la source
En train de lire
man mount
m'a montré une autre façon d'obtenir exactement la sortie souhaitée.
J'ai créé une fonction
lsmounts
Explication des arguments:
-D
: fournir une sortie telle que nous la connaissonsdf
-t
: sélectionnez les types de systèmes de fichiers que vous souhaitez voir. La prépensionno
exclut les systèmes de fichiers mentionnés.J'obtiens donc la sortie souhaitée
la source