想用xxd批量处理棋谱,shell脚本却总是出错,提示模糊的重定向。直到发现英文命名的wgs棋谱可以正常处理,才意识到是QQ围棋自动保存棋谱文件名中存在空格导致的问题。
解决方法是将变量放在引号之间:
#!/bin/bash
for file in ./*.wgs
do
xxd -g 1 -l 122 $"$file" > $"$file".txt
done
#echo $i
#for[1]t=0;t<i;t++
#{
# echo ${wgs[t]};
# xxd -g 1 -l 122 $"${wgs[t]}" > $"${wgs[t]}".txt;
#}
#xxd -g 1 -l 122 $1 > $1.txt
注释掉的部分是尝试用数组解决的代码。最后发现之间处理更方便。顺便记录一下,访问数组的方式 ${arry[键值]}。
参见:http://www.cnblogs.com/cocowool/archive/2013/01/15/2861904.html
参考资料
↑1 | t=0;t<i;t++ |
---|
发表回复