doveadm mit Wildcards funktioniert nicht

Christian Boltz dovecot-jpb at cboltz.de
Di Nov 8 21:15:28 CET 2022


Hallo Claudia, hallo Daniel, hallo zusammen,

Am Dienstag, 8. November 2022, 08:32:11 CET schrieb Claudia Koch via 
Dovecot:
> Das richtige Kommando muss so aussehen:
> 
> doveadm -D user \*
> 
> Wieso eine Maskierung der Wildcards erfolgen muss, kann ich nicht
> sagen, aber so funktioniert es.

Ohne Backslash (oder Quoting) werden Wildcards von der Shell expandiert. 
Wenn Du gerade in einem Verzeichnis bist, in dem es drei Dateien gibt, 
wird aus
    doveadm -D user *
effektiv
    doveadm -D user erste_datei zweite_datei dritte_datei

Durch escapen als   \*   oder quoten als   "*"   oder   '*'   wird 
verhindert, dass die Shell Wildcards durch Dateinamen ersetzt.

(Falls das jemand mal tatsächlich sehen will - testen geht mit   echo * 
und escapeten oder gequoteten Varianten davon.)


Der Vollständigkeit halber: Es gibt einen Sonderfall, in dem Du 
Wildcards nicht quoten musst (es schadet aber auch nicht):

mkdir leeres_verzeichnis
cd leeres_verzeichnis
doveadm -D user *

In diesem Fall wird der * nicht ersetzt, weil es keine Dateien mit 
passendem Namen (nunja: überhaupt keine Dateien oder Unterverzeichnisse) 
gibt.


Gruß

Christian Boltz
-- 
Wer braucht z.B. einen 3 GHz - getakteten PC mit 1 GByte DDR-RAM, wenn
dann daran nur eine lahme DMA-133-IDE-Festplatte rödelt, aber auch ein
geiles Modem für superschnelles Surfvergnügen und eine analoge TV-Karte
integriert sind? Das ist wie ein Ferrari auf Holzspeichenrädern und mit
2 x 15 Watt Lenco-Auto-Kassettenradio im Handschuhfach.
[Matthias Houdek in suse-linux]





Mehr Informationen über die Mailingliste Dovecot