10
votes

Comment supprimer le nom de fichier de la fin de la sortie du du -h

Prenez l'exemple: xxx

Comment puis-je supprimer le nom de fichier de la sortie de du -h

J'ai essayé d'utiliser SED pour rechercher une chaîne ( le nom de fichier) et le remplacer par rien, mais cela n'a pas fonctionné (commande ci-dessous) xxx

pourrait souligner pourquoi cela ne fonctionnera pas, ou peut-être une meilleure façon de le faire ?

considère

Paul


0 commentaires

7 Réponses :


11
votes
du -h file_size.txt | cut -f1

0 commentaires

17
votes

Vous avez une mauvaise citation dans cette ligne de commande. Le plus simple est probablement: xxx

pour corriger votre ligne de commande: xxx

puisque votre message a un awk Tag: xxx


6 commentaires

ou du -h file_size.txt | sed 's / \ s +. * //'


@Tomalak a la bonne idée d'utiliser SED - sûr de taper le nom de fichier deux fois.


Woops, les citations simples où une gauche de mes ont une variable de $ plus tôt. Merci pour l'aide comme toujours


@ Paultop6: Si vous utilisez une variable, au lieu d'ouverture, de fermeture et de réouverture et de fermeture de guillemets simples, utilisez simplement des guillemets doubles tels que ceci: SED "S / $ $ {$} //"


@Dennis: Est-ce que cela fonctionne correctement, même si la variable contient des caractères Meta Regex?


Au fait, CUT option prend éventuellement un délimiteur ( -d ), qui est l'onglet ( \ t ) par défaut. du sépare les colonnes à l'aide de l'onglet.



5
votes

Sortie simple La première colonne. Voici la solution AWK

du -h test.txt  | awk '{ print $1 }'


0 commentaires

0
votes

C'est un peu plus verbeux, mais dans tous les cas, c'est une autre façon de savoir ce que vous voulez:

du -h file_size.txt |while read x junk; do echo $x; done


0 commentaires

0
votes

@OP Si vos données contiennent des champs distincts, par exemple des espaces / des onglets, il est plus facile d'utiliser des outils tels que AWK / CUT pour les diviser sur ces champs par délimiteurs. L'utilisation de Regex (par exemple, SED) n'est pas nécessaire. Mieux vaut mieux utiliser la coquille.

Diverses manières xxx


0 commentaires

0
votes

Votre commande d'origine aurait travaillé, sauf que vous incluez un espace dans les onglets SED Regexp et DU Sorties.


0 commentaires

0
votes

La sortie de du -h est [onglet] délimitée. xxx


0 commentaires