[linux bash 脚本程序问题]检查文件及合并文件,详细问题如下
输入三个文本文件名,合并文件1、2为文件3,并显示。如果文件3不存在,先报告缺少文件3,然后合并并输出到mydoc.txt。如果文件2、3都不存在,报告缺少缺少文件2、3...
输入三个文本文件名,合并文件1、2为文件3,并显示。
如果文件3不存在,先报告缺少文件3,然后合并并输出到mydoc.txt。
如果文件2、3都不存在,报告缺少缺少文件2、3,只显示文件1的内容。
如果文件1不存在,提示缺少文件1,并重新运行程序。
我刚学bash编程,写出来的程序(如下)有严重问题,请教路过的大神们怎么写这个程序。
#!/bin/bash
function combine()
{
if [ -f $1 -a -f $2 -a -f $3 ]
then
cat $1 > $3 | cat $2 >> $3 | cat $3
elif [ -f $1 -a -f $2 ]
then
echo "$3 is not exist!"
cat $1 > mydoc.txt | cat $2 >> mydoc.txt
elif [ -f $1 ]
then
echo "$1 and $2 are not exist!"
cat $1
else
echo "$1 is not exists"
exit 1
fi
exit 0
}
echo "Please input three filename"
read file1
read file2
read file3
echo `combine $file1 $file2 $file3` 展开
如果文件3不存在,先报告缺少文件3,然后合并并输出到mydoc.txt。
如果文件2、3都不存在,报告缺少缺少文件2、3,只显示文件1的内容。
如果文件1不存在,提示缺少文件1,并重新运行程序。
我刚学bash编程,写出来的程序(如下)有严重问题,请教路过的大神们怎么写这个程序。
#!/bin/bash
function combine()
{
if [ -f $1 -a -f $2 -a -f $3 ]
then
cat $1 > $3 | cat $2 >> $3 | cat $3
elif [ -f $1 -a -f $2 ]
then
echo "$3 is not exist!"
cat $1 > mydoc.txt | cat $2 >> mydoc.txt
elif [ -f $1 ]
then
echo "$1 and $2 are not exist!"
cat $1
else
echo "$1 is not exists"
exit 1
fi
exit 0
}
echo "Please input three filename"
read file1
read file2
read file3
echo `combine $file1 $file2 $file3` 展开
2个回答
展开全部
#!/bin/bash
if [ $# != 4 ];then
echo "请输入三个文件名"
fi
$file1 = $1;
$file2 = $2;
$file3 = $3;
if [ ! -f $file1 ];then
echo "提示缺少文件1,请重新运行程序";
fi
if [ ! -f $file2 ];then
echo "提示缺少文件2,请重新运行程序";
cat $file1;
else
if [ ! -f $file3 ];then
echo "提示缺少文件3,请重新运行程序";
cat $file1 $file2 > mydoc.txt;
else
cat $file1 $file2 >> $file3
fi
fi
if [ $# != 4 ];then
echo "请输入三个文件名"
fi
$file1 = $1;
$file2 = $2;
$file3 = $3;
if [ ! -f $file1 ];then
echo "提示缺少文件1,请重新运行程序";
fi
if [ ! -f $file2 ];then
echo "提示缺少文件2,请重新运行程序";
cat $file1;
else
if [ ! -f $file3 ];then
echo "提示缺少文件3,请重新运行程序";
cat $file1 $file2 > mydoc.txt;
else
cat $file1 $file2 >> $file3
fi
fi
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询