Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 无法删除包含特殊字符的s3密钥_Python 3.x_Amazon S3_Command Line Interface_Boto3_Aws Cli - Fatal编程技术网

Python 3.x 无法删除包含特殊字符的s3密钥

Python 3.x 无法删除包含特殊字符的s3密钥,python-3.x,amazon-s3,command-line-interface,boto3,aws-cli,Python 3.x,Amazon S3,Command Line Interface,Boto3,Aws Cli,我有一个s3对象,其中有一个特殊字符\x{1B}(a前面) 当我尝试使用cli删除它时,由于特殊字符,它不尊重它 如果我尝试通过 bucket.object_versions.delete() 我明白了 如果我尝试从UI中删除,操作将成功,但对象不会消失 我希望永久删除该对象。 感谢您的指点。不要使用反引号“使用单引号” 在Linux/Unix shell中,反引号用于运行内联命令 通过提供该特殊字符的十六进制代码,可以使用printf打印任何内容。例如,要在键中添加选项卡,请使用: --ke

我有一个s3对象,其中有一个特殊字符\x{1B}(a前面)

当我尝试使用cli删除它时,由于特殊字符,它不尊重它

如果我尝试通过

bucket.object_versions.delete()
我明白了

如果我尝试从UI中删除,操作将成功,但对象不会消失

我希望永久删除该对象。
感谢您的指点。

不要使用反引号“使用单引号”

在Linux/Unix shell中,反引号用于运行内联命令

通过提供该特殊字符的十六进制代码,可以使用
printf
打印任何内容。例如,要在键中添加选项卡,请使用:

--key `printf 'a\x09b'`

这一次,需要反引号。

我尝试了反引号和单引号。不起作用。在遇到特殊字符的那一刻,它触发一个ESC,清除控制台,留给我从开始的语句a的一半A@DJ_Stuffy_K在这种情况下,请与他人分享您的特殊角色的身份。它是如何到达那里的?你用什么方法创建了一个带有不可打印字符的密钥?@DJ_Stuffy_K添加了另一个建议,尝试使用
printf
有人创建了它并留下了它,我只是想清理一下。特殊字符是
\x{1B}
@DJ_Stuffy_K在这种情况下,将
\x09
替换为
\x1b
,在上面的示例中,您表示通过S3管理控制台删除时“对象不会消失”。bucket是否已激活版本控制?如果是,请激活“列出版本”选项并删除对象的所有版本。然后它就会消失。
botocore.exceptions.ClientError: An error occurred (MalformedXML) when calling the DeleteObjects operation: The XML you provided was not well-formed or did not validate against our published schema
--key `printf 'a\x09b'`