我正在尝试在 Linux Bash 中编写一个 SVN 预提交挂钩脚本,如果无法将文件解析为 UTF-8,它将拒绝提交。
到目前为止,我已经编写了这个脚本:
REPOS="$1"
TXN="$2"
SVNLOOK=/usr/bin/svnlook
ICONV=/usr/bin/iconv
# Make sure that all files to be committed are encoded in UTF-8
for FILE in $($SVNLOOK changed -t "$TXN" "$REPOS"); do
if [$ICONV -f UTF-8 $FILE -o /dev/null]; then
echo "Only UTF-8 files can be committed ("$FILE")" 1>&2
exit 1
fi
# All checks passed, so allow the commit.
exit 0
问题是 iconv 需要提交文件的路径(或其他形式的文本),我不知道如何获取它。
任何人都可以帮忙吗?