Si j'ai un fichier texte avec les éléments suivants conent
red apple
green apple
green apple
orange
orange
orange
Est-il un Linux commande ou le script que je peux utiliser pour obtenir le résultat suivant?
1 red apple
2 green apple
3 orange
Si j'ai un fichier texte avec les éléments suivants conent
red apple
green apple
green apple
orange
orange
orange
Est-il un Linux commande ou le script que je peux utiliser pour obtenir le résultat suivant?
1 red apple
2 green apple
3 orange
Pouvez-vous vivre avec alphabétique, la liste ordonnée:
echo "red apple
> green apple
> green apple
> orange
> orange
> orange
> " | sort -u
?
green apple
orange
red apple
ou
sort -u FILE
-u désigne unique, et l'unicité est uniquement accessible via le tri.
Une solution qui préserve l'ordre:
echo "red apple
green apple
green apple
orange
orange
orange
" | { old=""; while read line ; do if [[ $line != $old ]]; then echo $line; old=$line; fi ; done }
red apple
green apple
orange
et, avec un fichier
cat file | {
old=""
while read line
do
if [[ $line != $old ]]
then
echo $line
old=$line
fi
done }
Les deux derniers seulement supprimer les doublons, qui suivent immédiatement - ce qui correspond à votre exemple.
echo "red apple
green apple
lila banana
green apple
" ...
Imprime deux pommes, séparées par une banane.
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.