如文档所示,kubectl执行远程脚本出现了问题
invalid character 'ÿ' looking for beginning of value (fffe7b000d000a0020002000200020002200610070006900560065007200 ...)
解决这个问题,先排查json文件的编码问题,参考 powershell 将txt文件从UTF-8转换为ASCII的简单方法 _大数据知识库
解决方案如下:
C:\Users\jiangcheng> (Get-Content -Raw "./dev0001.json") -cmatch '\P{IsBasicLatin}' False C:\Users\jiangcheng> (Get-Content -Raw ./dev0001.json) -cmatch '\P{IsBasicLatin}' False C:\Users\jiangcheng> 'café' | Out-File -Encoding Ascii temp05121830.txt C:\Users\jiangcheng> cat .\temp05121830.txt caf? C:\Users\jiangcheng> (Get-Content -Raw temp05121830.txt) -cmatch '\P{IsBasicLatin}' False C:\Users\jiangcheng> Get-Content -Path "./temp05121830.txt" | Out-File -FilePath "./temp05121830.txt" -Encoding ASCII C:\Users\jiangcheng> (Get-Content -Raw temp05121830.txt) -cmatch '\P{IsBasicLatin}' C:\Users\jiangcheng> C:\Users\jiangcheng> C:\Users\jiangcheng> C:\Users\jiangcheng> C:\Users\jiangcheng> (Get-Content -Raw ./dev0001.json) -cmatch '\P{IsBasicLatin}' False C:\Users\jiangcheng> Get-Content -Path "./dev0001.json" | Out-File -FilePath "./dev0002.json" -Encoding ASCII C:\Users\jiangcheng> (Get-Content -Path "./dev0002.json") -cmatch '\P{IsBasicLatin}' C:\Users\jiangcheng>
再执行命令
curl -k -H "Content-Type:application/json" -X PUT --data-binary "@dev0002.json" http://127.0.0.1:8081/api/v1/namespaces/dev/finalize
结果如下,改动是有效果的