J'ai un tas de fichiers dans un répertoire, chacun avec une ligne de texte. Je veux catcher tous ces fichiers ensemble (tous les liners) dans un seul gros fichier. Cependant, lorsque j'utilise cat
, il y a trop d'arguments. Comment puis-je contourner cela?unix - comment traiter trop d'arguments pour chat
1
A
Répondre
4
bash$ (ls | xargs cat) > /tmp/some_big_file
2
regarder dans xargs
find . <whatever> | xargs cat > outfile.txt
Remplacez le bit find . <whatever>
avec votre façon d'obtenir tous les fichiers
Remplacer outfile.txt avec votre fichier de sortie.
1
essayez d'utiliser -n avec xargs pour réduire le nombre d'arguments passés à chat
find .|xargs -n 100 cat >> out