【发布时间】:2012-01-23 08:46:05
【问题描述】:
我为文本文件编写了一个 svn-hook。内容测试如下所示:
svnlook cat -t $txn $repos $file 2>/dev/null | file - | egrep -q 'text$'
我想知道这是否可以用 Perl 完成。但是这样的事情不起作用:
svnlook cat -t $txn $repos $file 2>/dev/null | perl -wnl -e '-T' -
我正在测试此调用 ($?) 的退出状态,以查看给定文件是文本文件还是二进制文件。因为我是从 svn 中获取内容的。我不能使用 perl 的正常文件检查。
我已经用文件程序和 perl 用文本和二进制文件(text.txt,icon.png)进行了模拟:
find -type f | xargs -i /bin/bash -c 'if $(cat {} | 文件 - | egrep -q "text$");然后回显“{}:文本”;否则回显“{}:二进制”;呵呵
./text.txt:文本 ./icons.png: 二进制
find -type f | xargs -i /bin/bash -c 'if $(cat {} | perl -wln -e "-T;");然后回显“{}:文本”;否则回显“{}:二进制”;呵呵
./text.txt:文本 ./icons.png: 文字
【问题讨论】:
-
欢迎来到 StackOverflow!我已经格式化了你的问题。如果您可以在您的问题(编辑)中解释您期望什么输出以及这与您得到的输出有何不同以及对您的
${variables}的描述,这将很有帮助。有关编写完美问题的更多提示,请参阅 tinyurl.com/so-hints! -
感谢您更新这个问题。
标签: perl svn content-type