我想比较给定目录中文件的第一个字母(字符串),一旦比较为真,脚本就会将该特定文件复制或移动到另一个目录。
在这个例子中,我想复制所有大于字母“m”的文件,即只要文件中的第一个字母大于“m”,假设一个
要比较的文件示例:mard_2002.dat、accd_2001.dat、mcck_1999.dat qddf_2010.dat
x="米"
对于 *.dat 中的文件
做
t="$(echo $file | awk '{print substr($1,1,1)}')"
如果 [ "$t" > "$x" ]
然后
cp $file ./TEMP echo "now the file is compied" else
echo $file fi read pause done
上面的 if [ "$t" > "$x" ] 或 if [ "$t" < "$x" ] 命令似乎总是返回 true。只有当我使用等号时,脚本才会正确复制,如果 ["$t" = "$x"],在这种情况下,它只会复制那些仅以字母“m”开头的文件。
如有任何意见,请问候 Yacob