我是新使用xgettext命令。所以我不知道我做错了什么。
我输入命令:
xgettext -n *.php -o --output='/home/public/sample'
Run Code Online (Sandbox Code Playgroud)
在我的脚本中,但出现错误:
xgettext: cannot create output file "--output=/home/public/sample": No such file or directory`
Run Code Online (Sandbox Code Playgroud)
但是当我运行时xgettext -n *.php- messages.po 文件会在我的当前目录中创建!有没有办法指定创建文件的位置messages.po?
如果您想将 的输出写入xgettext指定的文件,请同时使用 或-o、 或--output,不能同时使用它们(在您的情况下,xgettext将“认为”将输出保存在其中--output='/home/public/sample'显然不能是文件)。
所以,这将是正确的:
xgettext -n *.php -o '/path/to/output_file'
Run Code Online (Sandbox Code Playgroud)
这相当于:
xgettext -n *.php --output='/path/to/output_file'
Run Code Online (Sandbox Code Playgroud)
如果您希望将输出文件放置在特定目录中,请使用:
xgettext -n *.php -p '/path/to/output_dir'
Run Code Online (Sandbox Code Playgroud)
或同等学历:
xgettext -n *.php --output-dir='/path/to/output_dir'
Run Code Online (Sandbox Code Playgroud)
另外,请确保该/path/to/output_file文件或/path/to/output_dir目录存在。
也可以看看man xgettext。