Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

bash PB avec column dans script lance par cron (0 tty)

10 réponses
Avatar
arafolie
un script qui fonctione bien et utilise column -t pour aligner des
colonne de largeurs très variable.

PB si c'est cron qui lance, column ne fonctionne plus !

Par le script j'ai exporté COLUMNS et PAGE (de ma session locale) pour
voir => 0

y'a t'il une solution via column de bash ou faut il utiliser une autre
fonction.


rappel column formatte très bien (beaucoup mieux que TAB) des données de
longueur très variables

PS email factice cause pollution spam ;-) déjà avancée

10 réponses

Avatar
Stephane Chazelas
2005-01-27, 11:13(+01), arafolie:
un script qui fonctione bien et utilise column -t pour aligner des
colonne de largeurs très variable.

PB si c'est cron qui lance, column ne fonctionne plus !

Par le script j'ai exporté COLUMNS et PAGE (de ma session locale) pour
voir => 0

y'a t'il une solution via column de bash ou faut il utiliser une autre
fonction.
[...]


Chez moi:

at now << EOF
echo -e "a bncasd d" | COLUMNS€ column -t > /tmp/a
EOF

fonctionne.

--
Stéphane

Avatar
arafolie
Stephane Chazelas wrote:

hez moi:

at now << EOF
echo -e "a bncasd d" | COLUMNS€ column -t > /tmp/a
EOF

fonctionne.


chez moi aussi, mais ...
pour faire tres joli il y a un champ avec des blancs inséccables à la
place des blancs normaux.

du coup ce champ est géré par column comme 1 colonne quel que soit le
nombre de mots de ce champ

typiquement le champ "nom courant" dans /etc/passwd peut contenir des
blancs (dans mon cas le 5eme champs) donc je l'extrait et lui applique
un TR (blanc) par (blanc inseccable)

quel_nom () {
grep "^$1:" /etc/passwd | cut -d: -f5 | tr " " " "
}

et la column ne réagit pareil en mode sans tty, il oubli les lignes qui
contiennent les blancs inséccables

donc mon probleme n'est pas un non-fonctionement, mais un fonctionnement
altéré s'il y a des blanc inséccables.

Je cherche tout de meme une solution ;-)

Avatar
Laurent Wacrenier
arafolie écrit:
et la column ne réagit pareil en mode sans tty, il oubli les lignes qui
contiennent les blancs inséccables


Mettre la variable LANG de manière apropriée.
Par défaut (C ou POSIX), l'espace insécable ne se rencontre
pas dans du texte.

Avatar
Stephane Chazelas
2005-01-27, 16:13(+01), arafolie:
[...]
et la column ne réagit pareil en mode sans tty, il oubli les lignes qui
contiennent les blancs inséccables
[...]


Peux-tu fournir un exemple de ce qui marche en tty et pas en
cron ?

--
Stéphane

Avatar
arafolie
Stephane Chazelas wrote:

Peux-tu fournir un exemple de ce qui marche en tty et pas en
cron ?


si je fait un tr " " "#" marche avec ou sans tty

compte Nbr Ko age non-lus poub nom IP
protocole
------ --- ------ --- ------- ---- ------- --
---------
ctr16bis 220 9872 220 220 0 CIRND22#DOCUMENTATION
PAS-RELEVEE
toxi0010 1 196 0 1 0 cntt#LYON
217.128.130.9 POP

si je fais un tr " " "blanc insecable"

compte Nbr Ko age non-lus poub nom IP protocole
------ --- ------ --- ------- ---- ------- -- ---------

Avatar
Stephane Chazelas
2005-01-27, 17:16(+01), arafolie:
Stephane Chazelas wrote:

Peux-tu fournir un exemple de ce qui marche en tty et pas en
cron ?


si je fait un tr " " "#" marche avec ou sans tty
[...]


at now << EOF
echo -e "a240b cqweqwe dncasd d e" | env -i column -t > /tmp/a
EOF

marche pour moi.

Je n'arrive pas a reproduire ton probleme. As tu une lignes de
commande simple qui reproduit le probleme ?

--
Stéphane


Avatar
arafolie
Laurent Wacrenier wrote:

arafolie écrit:
et la column ne réagit pareil en mode sans tty, il oubli les lignes qui
contiennent les blancs inséccables


Mettre la variable LANG de manière apropriée.
Par défaut (C ou POSIX), l'espace insécable ne se rencontre
pas dans du texte.



effectivement
j'ai ajouté export LANG=en_US et tout fonctionne avec ou sans tty

merci


Avatar
arafolie
Stephane Chazelas wrote:

et la column ne réagit pareil en mode sans tty, il oubli les lignes qui
contiennent les blancs inséccables
[...]


Peux-tu fournir un exemple de ce qui marche en tty et pas en
cron ?


voir solution dans suite à Laurent Wacrenier

si tu contribue toujours à
http://www.bsdbooks.net/shells/scripting/fr/index.html

y'aurait ils d'autres commandes en lien avec le tty pour lesquels il
serait bon de préciser les exports de cette variable LANG

merci à vous deux !


Avatar
Stephane Chazelas
2005-01-27, 17:47(+01), arafolie:
Stephane Chazelas wrote:

et la column ne réagit pareil en mode sans tty, il oubli les lignes qui
contiennent les blancs inséccables
[...]


Peux-tu fournir un exemple de ce qui marche en tty et pas en
cron ?


voir solution dans suite à Laurent Wacrenier

si tu contribue toujours à
http://www.bsdbooks.net/shells/scripting/fr/index.html
[...]


Mes contributions a l'ABS n'etaient qu'une liste de correction
aux premieres versions de ce manuel.

Note que ce manuel est plutot orienté Linux que BSD.

y'aurait ils d'autres commandes en lien avec le tty pour lesquels il
serait bon de préciser les exports de cette variable LANG
[...]


Si c'est bien un probleme de locale, alors, ce n'est pas un
probleme de tty mais d'environnement.

--
Stéphane



Avatar
Laurent Wacrenier
arafolie écrit:
y'aurait ils d'autres commandes en lien avec le tty pour lesquels il
serait bon de préciser les exports de cette variable LANG


Le tty n'utilise pas LANG.
Tu as probablement cette variable définie à l'initialisation de ton shell.