python - 使用 printf 在 bash 中导出不起作用

标签 python linux bash export env

我导出了:

export FMTSTR="%2\$n'printf "\xc0\xf2\x03\x42";'"

我想看看结果:

env | grep FMTSTR
FMTSTR=%2$n'printf xc0xf2x03x42;'

但这不是我想要的...结果一定是:

‫‪FMTSTR=%2$nTB‬‬

你能告诉我问题是什么吗? 其次,我可以使用 python 代替 printf 吗?像这样:

export FMTSTR="%2\$n $(python -c 'print "\xc0\xf2\x03\x42"')"

当我使用 python 时,结果是:

FMTSTR=%2$n ��B

为什么? 请帮我解决这两个问题。

谢谢你...

最佳答案

这并不完全正确(由于你问题的性质),但我觉得你使用这个可能会有更好的运气:

export FMTSTR=`python -c 'print "%2$n\xc0\xf2\x03\x42"'`

现在,\xc0\xf2\x03 没有对应的 ascii。我不确定您对输出 TB 的期望如何。

关于python - 使用 printf 在 bash 中导出不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21106969/

相关文章:

linux - 如何删除导出的环境变量?

bash - 为什么命令错误| grep 'regex-not-matching-error' 仍然打印错误?

python - 从 pandas 系列的索引操作返回 NaN

python - 推送到 Heroku : requested runtime is not available for this stack 时出错

python - 如何使用 csv 模块为 "delimiter"提供 2 个字符?

PHP: ob_start ('ob_gzHandler' ) 在linux下返回非法字符

linux - 设备 sda2 上的缓冲区 I/O 错误,逻辑 block 66326416

bash - 如何在脚本继续执行其他命令时使 osascript 显示对话框

linux - 30 分钟内每 5 分钟检查一次循环中的特定进程

python - 多少面比较合理?