相关疑难解决方法(0)

如何否定流程的回报价值?

我正在寻找一个简单但跨平台的否定过程来否定过程返回的价值.它应该将0映射到某个值!= 0和任何值!= 0到0,即以下命令应返回"yes,nonexistingpath不存在":

 ls nonexistingpath | negate && echo "yes, nonexistingpath doesn't exist."
Run Code Online (Sandbox Code Playgroud)

的! - 运算符很棒但很遗憾不是shell独立的.

shell cross-platform negate

83
推荐指数
6
解决办法
3万
查看次数

YAML中的单个感叹号有什么作用?

我正在使用YamlDotNet库,我在加载YAML文件时遇到此错误:

解析标记时,未找到预期的标记URI.

YAML文件应该是格式良好的,因为它来自RoR.该错误似乎是由以下代码触发的:

formats:
  default: ! '%d-%m-%Y'
  long: ! '%d %B, %Y'
  short: ! '%d %b'
Run Code Online (Sandbox Code Playgroud)

我不是专家,但我从YAML规范中看到,您可以使用感叹号来指示自定义对象/类型,并使用两个感叹号来指示显式内置类型.

obj1: !custom # whatever
obj2: !!str "My string"
Run Code Online (Sandbox Code Playgroud)

但是,我无法找到任何对上面使用的感叹号的引用.这是什么意思,为什么我使用的YAML库似乎无法解析它?请注意,如果我删除这些惊叹号,该文件将被解析.

.net tags parsing yaml yamldotnet

37
推荐指数
1
解决办法
2万
查看次数

Bash:以grep命令的相反状态退出一行?

如何减少以下bash脚本?

grep -P "STATUS: (?!Perfect)" recess.txt && exit 1
exit 0
Run Code Online (Sandbox Code Playgroud)

看起来我应该可以用一个命令来完成它,但我这里总共有3个.

我的程序应该:

  • 阅读recess.txt
  • 退出1(或非零)如果它包含"STATUS:"NOT"Perfect"的行
  • 如果不存在这样的行,则退出0(即所有"STATUS:"行都是"完美")

答案奖授予最严格的剧本.谢谢!

示例文件

计划应该有退出状态0此文件:

FILE: styles.css 
STATUS: Perfect!

FILE: contour-styles.css
STATUS: Perfect!
Run Code Online (Sandbox Code Playgroud)

程序应该具有此文件的退出状态1(或非零):

FILE: styles.css 
STATUS: Perfect!

FILE: contour-styles.css
STATUS: Busted 
FAILURES: 1 failure

Id's should not be styled
       1. #asdf
Run Code Online (Sandbox Code Playgroud)

regex bash grep exit-code exit

28
推荐指数
6
解决办法
1万
查看次数

标签 统计

.net ×1

bash ×1

cross-platform ×1

exit ×1

exit-code ×1

grep ×1

negate ×1

parsing ×1

regex ×1

shell ×1

tags ×1

yaml ×1

yamldotnet ×1