我想写这么一个脚本:
进入指定目录后,判断该目录下所有文件的类型
如果是目录
不进行任何操作
如果是文件
则创建以该文件名命名的目录,并将这个文件转移到新建的对应文件夹内
代码如下:
#!/bin/sh
cd test
for file in *;do
if [! -d $file] ;then
mkdir 1$file
mv $file 1$file
else
echo "nothing happens"
fi
done;
结果却只出现这个
./a.sh: 10: [!: not found
nothing happens
./a.sh: 10: [!: not found
nothing happens
更改脚本后:
#!/bin/sh
cd test
for file in *;do
if [!-f $file] ;then
echo "nothing happens"
else
mkdir 1$file
mv $file 1$file
fi
done;
运行结果:
./a.sh: 10: [!-f: not found
./a.sh: 10: [!-f: not found
从两个结果看,每次程序只执行了else里面的内容,上面对文件的判断全都没有起效,,不知道到底是什么原因,,求教各位大虾~~谢谢了
请教一个关于处理文件的问题
-
- 帖子: 2
- 注册时间: 2010-10-10 20:17
-
- 帖子: 1453
- 注册时间: 2008-05-24 8:30
Re: 请教一个关于处理文件的问题
[ 后,] 前都要有空格
-
- 帖子: 2
- 注册时间: 2010-10-10 20:17
Re: 请教一个关于处理文件的问题
哈哈 ,,果然是这个问题阿 太 感谢了阿aerofox 写了:[ 后,] 前都要有空格