分页: 1 / 1

给我看看这个脚本哪里错误,不出结果啊??

发表于 : 2014-03-28 10:11
dongfl
1.判断家目录下是否存在目录file_dir,dir_dir,如果不存在,创建之;如果存在,删除后重新创建
2.遍历当前目录下的所有文件,判断是目录还是普通文件,如果是普通文件,将文件拷贝到家目录下的file_dir;
如果是目录,拷贝到家目录下的dir_dir
3.将file_dir采用bzip2的方式压缩,并移动到共享目录;将dir_dir采用gzip的方式压缩,并移动到共享目录;
4.进入到共享目录,解压上述压缩包

#! /bin/bash
file_dir=$HOME/file_dir
dir_dir=$HOME/dir_dir
share=/mnt/hgfs/share

set -x
if [ -d $file_dir ]
then
rm $file_dir -rf
fi

if [ -d $dir_dir ]
then
rm $dir_dir -rf
fi

mkdir $file_dir
mkdir $dir_dir

flist=`ls`
for file in $flist
do
if [ $#!=1 ]
then
if [ -d $file ]
then
cp $file $dir_dir -a
cd $dir_dir/$1
dls=`ls`
tar -czvf dir.tar.gz $dls
mv dir.tar.gz $share
fi
if [ -f $file ]
then
cp $file $file_dir
cd $file_dir
fls=`ls`
tar -cvjf file.tar.bz2 $fls
mv file.tar.bz2 $share
fi
fi
done

cd $share
tar xvf file.tar.bz2
tar xvf dir.tar.gz
set +x

Re: 给我看看这个脚本哪里错误,不出结果啊??

发表于 : 2014-03-28 10:30
YeLee
还望阁下能说明一下哪里出了错,另再提醒一下,最好能注意一下$PWD,cd之后要记得回来,毕竟这cd不是fork过去的。 :em01

Re: 给我看看这个脚本哪里错误,不出结果啊??

发表于 : 2014-04-14 21:57
careone
确认共享目录/mnt/hgfs/share是否存在,已挂载并有写权限

另外调试时建议为 mv 加上 -v 选项,方便查看提示信息

Re: 给我看看这个脚本哪里错误,不出结果啊??

发表于 : 2014-04-14 22:31
zhw2101024
第一行改成这样

代码: 全选

#! /bin/bash -x
执行一下,看看是哪行出错的先。

Re: 给我看看这个脚本哪里错误,不出结果啊??

发表于 : 2014-04-25 15:55
jackysc
其实也有运行时调试的方式

代码: 全选

sh -x filename.sh
:em11

Re: 给我看看这个脚本哪里错误,不出结果啊??

发表于 : 2014-04-26 21:22
astolia
zhw2101024 写了:第一行改成这样

代码: 全选

#! /bin/bash -x
执行一下,看看是哪行出错的先。
jackysc 写了:其实也有运行时调试的方式

代码: 全选

sh -x filename.sh
:em11
你们都没看到别人第二段第一行就是 set -x 么?