web-dev-qa-db-fra.com

Comment puis-je mettre des onglets dans des fichiers texte depuis Terminal?

Lorsque j'utilise Terminal pour trouver chaque travail sur lequel j'ai travaillé au cours des vingt-quatre dernières heures, j'obtiens un fichier texte avec des lignes comme celle-ci:

ABC 12345 Travail effectué le DATE

DEF 67890 Un autre travail le DATE

GHI 10112 Travail final le DATE

Ce fichier texte peut contenir jusqu'à cent lignes. Je dois insérer toutes ces données dans un tableau dans Microsoft Excel. Pour me faciliter la vie, j'aimerais savoir comment ajouter un onglet sur chaque ligne, après les chiffres.

Quelque chose comme ça:

echo "ABC 12345 <tab> Job Worked on DATE" >> jobs.txt
echo "DEF 67890 <tab> Another Job on DATE" >> jobs.txt
echo "GHI 10112 <tab> Final Job on DATE" >> jobs.txt

Comment pourrais-je y parvenir?

18
W3Geek

Utilisez echo -e avec\t pour un onglet. Comme ça:

echo -e "ABC 12345 \t Job Worked on DATE" >> jobs.txt
35
AW101

Vous pouvez appuyer sur Ctrl-vTab pour taper un onglet brut.


Vous pouvez aussi utiliser $'...' syntaxe de chaîne c:

echo $'ABC 12345 \t Job Worked on DATE' >> jobs.txt
6
kev

Ajoutez un onglet au deuxième champ:

awk '{$2 = $2 "\t"; print}' inputfile  > outputfile

Similaire, mais en utilisant une expression régulière:

sed 's/[[:digit:]]\+/&\t/' inputfile > outputfile
1
Dennis Williamson