我如何逃避YAML中的整条线?我想在列表中有json='{"title": "travis_saulshanabrook_site","key": "'$(cat ~/.ssh/id_rsa.pub)'"}'
,但是我无法将其解析为字符串。我可以在整行中加上单引号,但是我必须避免字符串中的每一个引号,这使得它很难阅读。该字符串将作为bash命令运行Travis CI引用YAML(适用于Travis CI)
9
A
回答
8
最优雅的解决方案是使用literal style|
指标,与-
修改剥去最后换行符。这样就不需要额外的引号。
如果标恰好是一个YAML文件中使用的唯一的事情:
|-
json='{"title": "travis_saulshanabrook_site","key": "'$(cat ~/.ssh/id_rsa.pub)'"}'
如果是关键abc
的映射值:
abc: |-
json='{"title": "travis_saulshanabrook_site","key": "'$(cat ~/.ssh/id_rsa.pub)'"}'
,或者如果它是的一部分列表:
- |-
json='{"title": "travis_saulshanabrook_site","key": "'$(cat ~/.ssh/id_rsa.pub)'"}'
1
我不确定是否有解决方案使字符串和易于阅读。
FYI这是该字符串看起来像转义:
script: ! 'your_cmd json=''{"title": "travis_saulshanabrook_site","key": "''$(cat ~/.ssh/id_rsa.pub)''"}'''
相关问题
- 1. asan with g ++ 5.4.0不适用于travis CI
- 2. /dev/null似乎不适用于travis CI
- 3. Travis-CI不使用oraclejdk8
- 4. 禁用Travis CI内置.travis.yml
- 5. Coveralls.io与Travis-CI
- 6. Android的Travis CI
- 7. Github的Travis CI?
- 8. Xamarin和Travis-ci
- 9. 哪个CI适用于.Net
- 10. Travis CI子目录
- 11. Bundler,Ruby Gem,Travis-CI
- 12. Travis-CI - 配置LLVM
- 13. Travis-ci&Gobject内省
- 14. Travis-CI和develop.github.wordpress.org timeout
- 15. 如何禁用Travis CI的virtualenv?
- 16. 使用Travis-CI进行Node.js项目
- 17. 在travis-ci上使用secret api keys
- 18. 使用Swift框架的Travis CI
- 19. 如何用Laravel 5设置Travis-ci? InvalidArgumentException
- 20. 使用Travis CI与Swift 3.0和CocoaPods
- 21. 使用Travis CI来编译C++项目
- 22. R travis是否适用于大型数据包?
- 23. 如何比较travis-ci和gitlab-ci?
- 24. Travis CI失败iOS Build
- 25. Travis CI与Amazon Elastic Beanstalk
- 26. Travis CI构建失败
- 27. Travis-ci matplotlib依赖和python3
- 28. Travis CI - Android构建脚本
- 29. Travis CI运行python脚本
- 30. Travis CI/Pro:CIDR/IP范围?