xgettext-Ausgabe in einen bestimmten Ordner

xgettext-Ausgabe in einen bestimmten Ordner

Ich bin neu im Umgang mit xgettextdem Befehl. Ich weiß also nicht, was ich falsch mache.

Ich gebe den Befehl ein:

xgettext -n *.php -o --output='/home/public/sample'

in meinem Skript, aber ich erhalte eine Fehlermeldung:

xgettext: cannot create output file "--output=/home/public/sample": No such file or directory`

Aber wenn ich es ausführe, xgettext -n *.phpwird die Datei „messages.po“ in meinem aktuellen Verzeichnis erstellt! Gibt es eine Möglichkeit, den Speicherort anzugeben, an dem messages.podie Datei erstellt werden soll?

Antwort1

xgettextWenn Sie die Ausgabe in eine bestimmte Datei schreiben möchten , verwenden Sie oder -o, oder --output, nicht beide gleichzeitig (in Ihrem Fall xgettextwird „denkt“, die Ausgabe zu speichern, --output='/home/public/sample'was offensichtlich keine Datei sein kann).

Also, das hier ist richtig:

xgettext -n *.php -o '/path/to/output_file'

was gleichbedeutend ist mit:

xgettext -n *.php --output='/path/to/output_file'

Wenn Sie möchten, dass die Ausgabedateien in einem bestimmten Verzeichnis abgelegt werden, verwenden Sie:

xgettext -n *.php -p '/path/to/output_dir'

oder gleichwertig:

xgettext -n *.php --output-dir='/path/to/output_dir'

Stellen Sie außerdem sicher, dass /path/to/output_filedie Datei oder /path/to/output_dirdas Verzeichnis vorhanden ist.

Siehe auchman xgettext.

verwandte Informationen