Travailler avec la commande Cut
Il y a différents moments où vous voudriez obtenir une sous-chaîne d'une ligne donnée sur le terminal. Dans ce cas, la commande Cut fonctionne parfaitement et offre diverses options pour diviser les cordes. Vous pouvez ouvrir la page d'aide pour afficher les différentes options à votre disposition. De plus, vous pouvez utiliser la commande Cut directement sur les scripts de bash ou la ligne de commande.
Discutons en détail des différentes options de commande de coupe:
Maintenant, ayons quelques exemples pratiques.
1. Extraire les octets uniquement
Le -b L'indicateur spécifie que la coupe sélectionne uniquement les octets spécifiés. Vous pouvez l'utiliser lorsque vous travaillez avec un fichier ou saisissez la chaîne à extraire à l'aide d'une commande comme écho.
Par exemple, pour combiner l'écho avec la coupe pour extraire des caractères spécifiques de la chaîne en fonction de leur nombre d'octets, nous pourrions avoir un exemple comme celui qui suit:
$ echo «Linuxhint» | coupe -B 1,2,3,4,5
La commande donnée extrait les octets en fonction du nombre spécifié à partir de 1.
Alternativement, vous pouvez utiliser la commande Cut, à condition que vous ajoutiez le nom du fichier qui contient les chaînes. Notre fichier pour cet exemple est cutdemo.SMS.
Nous pouvons extraire les sous-chaînes avec la commande suivante:
$ Cut -B 1,3,4,5,6,9 CutDemo.SMS
Vous pouvez également donner un gamme Lorsque vous travaillez avec l'option -b. Par exemple, nous pourrions donner une plage dans la commande précédente et choisir d'extraire les octets de 1 à 4 et 6-10. Notre nouvelle commande est comme indiqué:
$ Cut -B 1-4,6-10 CutDemo.SMS
Notez comment la chaîne extraite est basée sur la plage spécifiée.
2. Extraire les personnages uniquement
Il existe différentes façons dont vous pouvez utiliser le -c option.
Vous pouvez choisir d'extraire un caractère donné en spécifiant la position du caractère comme dans l'exemple suivant:
$ Cut -C 4 Cutdemo.SMS
Pourtant, vous pouvez extraire les caractères de la position spécifiée vers l'arrière lorsque vous ajoutez le signe négatif. Dans l'exemple suivant, nous partons de la 4e position pour tous les champs.
$ Cut -C -4 Cutdemo.SMS
De plus, vous pouvez spécifier pour commencer à extraire une position donnée ou à une position finale donnée.
L'exemple suivant extrait la chaîne de la 6e position à la fin de la chaîne.
$ Cut -C6- Cutdemo.SMS
3. Travailler avec les délimiteurs
Vous pouvez spécifier un délimiteur qui aide à diviser la chaîne. Par exemple, vous pouvez choisir de diviser la chaîne en fonction de la virgule, du côlon, etc. Les délimiteurs fonctionnent mieux lors de la spécification d'un champ.
Spécification des champs
Si nous voulons spécifier les champs à inclure, nous pourrions utiliser le -F drapeau. Par exemple, lors de l'extraction d'un fichier donné, vous pouvez spécifier le champ -f 1. L'exemple suivant divise la chaîne basée sur Demiter «» et pour le champ 1.
$ Cut -d ““ -f 1 Cutdemo.SMS
Pour plusieurs champs, vous spécifiez les numéros de champ.
$ Cut -d ““ -f 1,3 cutdemo.SMS
Vous pouvez également spécifier le délimiteur de sortie à l'aide du -sortie-délimiter = $ 'délimiter' option. Par exemple, nous pouvons spécifier la sortie pour utiliser un astérisque (*) Comme délimiteur de sortie à l'aide de la commande suivante:
$ Cut -d ““ -f 1,3 cutdemo.txt --output-delimiter = $ '*'
Dans la sortie précédente, nous pouvons noter que la dernière ligne ne contient pas le délimiteur spécifié, mais il a été imprimé. Pour éviter d'imprimer des lignes qui ne contiennent pas le délimiteur, utilisez le -s drapeau. Notre nouvelle commande et sortie est comme indiqué dans l'illustration suivante:
$ Cut -d ““ -f 1,3 cutdemo.txt -output-delimiter = $ '*' -s
Conclusion
Travailler avec la commande Cut est facile et vous donne la flexibilité pour en réaliser plus lorsque vous travaillez avec des cordes. Nous avons vu les différentes façons dont vous pouvez l'utiliser pour diviser les cordes en utilisant les différentes options. Grâce à ce guide, vous comprenez maintenant l'utilisation de la commande Cut Bash.