You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在Linux终端退出AWS Cli编辑模式并提交命令

解决AWS CLI终端输入JSON后无法提交的问题

嘿,我完全懂这种翻遍文档都找不到答案的挫败感!你遇到的其实是Linux终端里的**标准输入(stdin)**输入场景——当AWS CLI提示你输入POST内容时,它并不是在开启什么文本编辑器,只是在等待你结束标准输入的输入,所以单纯按回车只会换行,不会提交。

给你几个实用的解决办法:

  • 直接用Ctrl+D提交输入:当你写完所有JSON内容后,直接按下键盘上的Ctrl+D组合键(这是Linux系统里结束标准输入的默认快捷键),终端就会把你输入的所有内容发送给AWS CLI,完成命令提交。
  • 用文件重定向输入(适合长JSON):如果你的JSON内容比较复杂或者需要重复使用,建议先把JSON内容保存到一个文件里,比如命名为aws-config.json,然后用命令重定向的方式传入:
    aws your-target-command < aws-config.json
    
    这样就跳过了交互式输入的步骤,直接读取文件内容作为POST数据。
  • 命令行直接指定JSON(推荐):AWS CLI本身支持通过--cli-input-json参数直接在命令行传入JSON内容,这样就不会触发交互式输入提示了。举个例子:
    aws ec2 run-instances --cli-input-json '{"ImageId": "ami-xxxxxx", "InstanceType": "t2.micro"}'
    
    注意要用单引号把整个JSON字符串包裹起来,避免Shell解析里面的双引号导致错误。

为啥你之前试的Escape:qexit这些都没用呢?因为你根本没进入任何文本编辑器,只是在终端的标准输入流里输入内容,那些都是Vim等编辑器的命令,自然对当前场景不起作用啦~

内容的提问来源于stack exchange,提问作者Ew Na

火山引擎 最新活动