Je travail actuelement sur AIX et j'ai besion de GREP pour filtrer les lignes vides d'un fichier.
j'utilise la commande :
grep -v '^$' fic1 > fic2
Seulement pour certains fichiers la commande me retourne :
grep : 0652-226 La longueur maximale de la ligne (2048) est dépassée.
QQu'un sait-il pourquoi grep refuse d'executer la commande ?
mauvais grep, changer grep ;-)
D'avance merci !
Clement
Jérémy JUST
On Fri, 16 Apr 2004 18:52:42 +0200 JustMe wrote:
grep : 0652-226 La longueur maximale de la ligne (2048) est dépassée. mauvais grep, changer grep ;-)
Oui. Je détaille quand même un peu: si c'est comme sous Solaris, les outils du système sont salement limités en longueur de ligne.
Les outils GNU n'ont pas ces limitations (et leur installation se passe bien sur la plupart des OS courants). Donc plus qu'à chercher un truc comme « GNU grep » sur Google...
-- Jérémy JUST
On Fri, 16 Apr 2004 18:52:42 +0200
JustMe <pasdesp@m.merci> wrote:
grep : 0652-226 La longueur maximale de la ligne (2048) est dépassée.
mauvais grep, changer grep ;-)
Oui. Je détaille quand même un peu: si c'est comme sous Solaris, les
outils du système sont salement limités en longueur de ligne.
Les outils GNU n'ont pas ces limitations (et leur installation se passe
bien sur la plupart des OS courants).
Donc plus qu'à chercher un truc comme « GNU grep » sur Google...
grep : 0652-226 La longueur maximale de la ligne (2048) est dépassée. mauvais grep, changer grep ;-)
Oui. Je détaille quand même un peu: si c'est comme sous Solaris, les outils du système sont salement limités en longueur de ligne.
Les outils GNU n'ont pas ces limitations (et leur installation se passe bien sur la plupart des OS courants). Donc plus qu'à chercher un truc comme « GNU grep » sur Google...
-- Jérémy JUST
Stephane Chazelas
2004-04-18, 14:50(+02), Jérémy JUST:
On Fri, 16 Apr 2004 18:52:42 +0200 JustMe wrote:
grep : 0652-226 La longueur maximale de la ligne (2048) est dépassée. mauvais grep, changer grep ;-)
Oui. Je détaille quand même un peu: si c'est comme sous Solaris, les outils du système sont salement limités en longueur de ligne.
C'est standardisé. D'après POSIX, un fichier texte est composé de lignes ne faisant pas plus de LINE_MAX caractères et grep est un outil texte (LINE_MAX doit etre au moins egal à 2048 selon POSIX).
Un fichier qui contient des ' ' ou qui a des caractères après le dernier 'n' ou qui a des lignes de plus de LINE_MAX caractères n'est pas un fichier texte. Un fichier qui a des lignes de plus de 2048 caractères peut donc ne pas etre considéré comme un fichier texte.
Pour faire du grep sur des fichiers non-texte, on peut utiliser perl (ou les outils GNU).
On Fri, 16 Apr 2004 18:52:42 +0200
JustMe <pasdesp@m.merci> wrote:
grep : 0652-226 La longueur maximale de la ligne (2048) est dépassée.
mauvais grep, changer grep ;-)
Oui. Je détaille quand même un peu: si c'est comme sous Solaris, les
outils du système sont salement limités en longueur de ligne.
C'est standardisé. D'après POSIX, un fichier texte est composé
de lignes ne faisant pas plus de LINE_MAX caractères et grep est un
outil texte (LINE_MAX doit etre au moins egal à 2048 selon POSIX).
Un fichier qui contient des ' ' ou qui a des caractères après
le dernier 'n' ou qui a des lignes de plus de LINE_MAX caractères
n'est pas un fichier texte. Un fichier qui a des lignes de plus
de 2048 caractères peut donc ne pas etre considéré comme un
fichier texte.
Pour faire du grep sur des fichiers non-texte, on peut utiliser
perl (ou les outils GNU).
grep : 0652-226 La longueur maximale de la ligne (2048) est dépassée. mauvais grep, changer grep ;-)
Oui. Je détaille quand même un peu: si c'est comme sous Solaris, les outils du système sont salement limités en longueur de ligne.
C'est standardisé. D'après POSIX, un fichier texte est composé de lignes ne faisant pas plus de LINE_MAX caractères et grep est un outil texte (LINE_MAX doit etre au moins egal à 2048 selon POSIX).
Un fichier qui contient des ' ' ou qui a des caractères après le dernier 'n' ou qui a des lignes de plus de LINE_MAX caractères n'est pas un fichier texte. Un fichier qui a des lignes de plus de 2048 caractères peut donc ne pas etre considéré comme un fichier texte.
Pour faire du grep sur des fichiers non-texte, on peut utiliser perl (ou les outils GNU).