Comment puis-je passer chaque ligne d'un fichier texte en tant qu'argument à un script que j'ai écrit? Chaque ligne est donc en elle-même un argument unique pour le script à chaque fois.Passer des lignes en tant qu'args à un script
1
A
Répondre
3
cat file | xargs --replace script {}
Je dois souligner que si vous voulez que chaque ligne du fichier à traiter comme un argument à votre script, ajouter des guillemets, le cas échéant à la {}, \ le plus probable « {} \ »
+0
Incorrect, {} sera remplacé par un argument quel que soit le contenu. Ce que vous voulez, c'est changer le délimiteur de n'importe quel espace (par défaut) à newlines-only, en utilisant '-d '\ n'' ou similaire. – ephemient
1
vous pouvez le faire
while read -r line
do
./script_i_have_written.sh "$line"
done <"file"
mais pourquoi faire quand dans votre « script_i_have_written.sh », vous pouvez analyser le fichier texte immédiatement
#!/bin/bash
# script_i_have_written.sh
while read -r line
do
echo "do something with $line"
done <"file"
2
Pas besoin de cat
xargs -I {} --arg-file input-file script_file {}
Questions connexes
- 1. Passer des objets en tant qu'arguments
- 2. Passer des propriétés en tant que paramètres
- 3. Passer des temporaries en tant que LValues
- 4. Passer un NSArray en tant que paramètre?
- 5. Passer un raccourci vers un script batch
- 6. MVC - Passer ViewData en tant que booléen
- 7. VB.NET - Passer un événement en tant que paramètre
- 8. Passer des arguments à java vm depuis le script NSIS
- 9. Passer un pointeur sur un proc en tant qu'argument
- 10. Passer des classes système en tant que paramètres constructeurs
- 11. Comment passer des données Xml en tant que paramètre à un test dans mbunit v3
- 12. Passer à l'échelle en tant que développeur opensource
- 13. comment passer un itérateur Ruby en tant que paramètre?
- 14. Passer une méthode en tant qu'argument
- 15. Insérer des lignes vides sans passer en mode insertion
- 16. Passer une requête en tant que paramètre
- 17. passer une variable en tant que tableau
- 18. Passer un délégué lui-même en tant que paramètre
- 19. lignes Passer à la requête sur la base des données
- 20. addEventListener passer l'appelant en tant qu'argument
- 21. SSRS Matrice groupes de lignes en tant que lignes réelles
- 22. Démarrer un script python en tant que processus d'arrière-plan à partir d'un script python
- 23. PHP en tant que langage de script intégré
- 24. Passer un tableau en tant que paramètre de fonction JavaScript
- 25. Passer un tableau en tant que valeurs individuelles aux paramètres
- 26. MySQL Rejoignez plusieurs à plusieurs en tant que lignes simples
- 27. Passer des lignes mysql à l'algorithme de notation?
- 28. Passer l'URL en tant que paramètre
- 29. Afficher les lignes en tant que colonne
- 30. passer des valeurs de script Java à PHP
Soyez plus précis. Pourquoi la balise perl est-elle là? Est-ce que vous lisez les lignes dans perl et passez ensuite à un script, ou est le script que vous passez à perl? Si ce dernier, que la balise perl est sans importance et vous devez nous dire quelle langue vous voulez automatiser l'argument passant po –
Le cas est le dernier. Toute langue est bien en passant l'argument. – syker