我阅读手册页,但没有一个例子或解释.这是否捕获标签?任何有关这方面的文件?
编辑:具体如何做数据= $(cat)允许它运行这个钩子脚本?
#!/bin/bash # Runs all executable pre-commit-* hooks and exits after,# if any of them was not successful. # # Based on # http://osdir.com/ml/git/2009-01/msg00308.HTML data=$(cat) exitcodes=() hookname=`basename ` # Run each hook,passing through STDIN and storing the exit code. # We don't want to bail at the first failure,as the user might # then bypass the hooks without kNowing about additional issues. for hook in $GIT_DIR/hooks/$hookname-*; do test -x "$hook" || continue echo "$data" | "$hook" exitcodes+=($?) done
https://github.com/henrik/dotfiles/blob/master/git_template/hooks/pre-commit
解决方法 猫会输出其输出.在您发布的变量捕获的上下文中,效果是将语句(或包含脚本)的标准输入分配给变量.
命令替换$(command)将返回命令的输出;该赋值会将替换的字符串分配给变量;在没有文件名参数的情况下,cat将会读取和打印标准输入.
您发现这个Git钩子脚本从标准输入捕获提交数据,以便可以分别重复地将其连接到每个钩子脚本.你只得到一个标准输入的副本,所以如果你需要多次,你需要捕获它. (我将使用一个临时文件,并且正确地引用所有的文件名变量;但是将数据保存在一个变量当然可以,尤其是如果你只需要相当少的输入.)
总结以上是内存溢出为你收集整理的linux – Unix:猫本身做什么?全部内容,希望文章能够帮你解决linux – Unix:猫本身做什么?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)