[Eisfair] eisman query, da haette ich was ...

Ansgar Püster ansgar.puester at netcologne.de
Fr Mai 17 09:03:17 CEST 2019


Hallo Daniel,

Am 16.05.2019 um 21:03 schrieb Daniel Vogel:
> Hallo Marcus,

...

> Beispiel:
> 
> eisman query postgresql96 1.0.7
> eisman query 'postgresql*,mariadb*'
> 
> Die einfachen Anführungsstriche sollten verhindern, dass der Wildcard
> von der Shell substituiert wird.

Durch die Schichtenarchitektur von eisman gibt es leider
eine zweite Stelle, an der Wildcards von der Shell
substituiert werden.

Beispiel:

eis64test # ls -la
total 8
drwxr-xr-x 2 root root 4096 May 17 08:52 .
drwx------ 5 root root 4096 May 17 08:50 ..

eis64test # eisman query --fields name 'tcp*'
name       tcpdump
---------------------------------------------------------
name       tcpd
---------------------------------------------------------

eis64test # > tcpfake

eis64test # ls -la
total 8
drwxr-xr-x 2 root root 4096 May 17 08:54 .
drwx------ 5 root root 4096 May 17 08:50 ..
-rw-r--r-- 1 root root    0 May 17 08:54 tcpfake

eis64test # eisman query --fields name 'tcp*'
eis64test #

Die einfachen Anführungsstriche reichen hier einfach nicht!

Grund ist Zeile
461         ${EISMAN_BIN_PATH}/eisman_query.sh $@
in eisman.

Abhilfe:

eis64test # eisman query --fields name 'tcp\*'
gawk: warning: escape sequence `\*' treated as plain `*'
name       tcpdump
---------------------------------------------------------
name       tcpd
---------------------------------------------------------

Ich hatte, so meine ich, schon vor geraumer Zeit mal
vorgeschlagen die entsprechende Zeile abzuändern:

461         ${EISMAN_BIN_PATH}/eisman_query.sh "$@"

Dann funktioniert es auch ohne den Backslash.

Gruß,
Ansgar


Mehr Informationen über die Mailingliste Eisfair