【发布时间】:2013-08-09 17:32:01
【问题描述】:
您好,我正在编写一个程序,要求用户输入目录、联系人姓名和电话号码。
程序所做的是创建一个类似<contactname>.contact 的.contact 文件,并在其中添加联系号码。如果指定目录中已经存在该文件,则程序会创建一个名为contact(1).contact 的新文件,如果存在则为contact(2).contact 等。
当contact(1).contact 已经存在时,我希望程序创建contact(2).contact,但程序会创建contact(1)(2).contact 文件。我不知道问题是什么。任何帮助,将不胜感激 ! :)
到目前为止我用 bash 编写的代码。
#!/bin/bash
directory=
if(($# == 0))
then
echo -n "Please enter directory path:"
read directory
cd $directory
echo -n "Please enter contact name:"
read name
echo -n "Please enter contact number:"
read number
else
directory=$1
cd ${directory}
name=$2
number=$3
fi
if [ -e $name.contact ];
then
exists=1
count=1
while [ $exists -eq 1 ];
do
name=$name\($count\)
count=$(($count+1))
if [ ! -f $name.contact ];
then
exists=0
fi
done
echo $number > $name.contact
name=5
else
echo $number > $name.contact
fi
【问题讨论】:
-
您还可以在post中找到一些其他方法来完成这项工作的提示
标签: bash