Привет Я пишу программу, которая просит пользователя ввести каталог, имя контакта и номер.Печать неправильного вывода в bash
Что делает программа, так это то, что она создает файл .contact, такой как <contactname>.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
Вы также можете найти некоторые подсказки для других w ays, чтобы сделать работу в этом [post] (http://stackoverflow.com/questions/17974355/unix-shell-script-for-increment-the-extension/17975651#17975651) – Bentoy13