2017-06-27 2 views
0

In meinem Skript ich richtig ausgeführt, wenn das erste Mal in der if-Schleife nach dem dritten Mal der Ausführung ausgeführt wird nicht richtig funktioniert. Was kann ich tun, ist ein Fehler ah ...? bitte beheben Sie mein Problem ...? Im Skript gab ich den Wert für Kundenname als ABC dann wieder gab ich dem ABC, dass es Zeit es ececute die if-Bedingung richtig, aber ich gab das dritte Mal als ABC sein nicht richtig funktioniert ..!Wenn die Schleife nicht richtig funktioniert

#!/bin/bash 

echo " --- Enter the Database name ---" 
read databasename 


echo " --- enter the table name --- " 
read table_name 

sqlite3 $databasename.db "DROP TABLE IF EXISTS $table_name;" 

sqlite3 $databasename.db "CREATE TABLE IF NOT EXISTS $table_name(cus_id INTEGER PRIMARY KEY AUTOINCREMENT UNIQUE,cus_name TEXT NOT NULL UNIQUE ,cus_domain TEXT UNIQUE, cus_status TEXT NOT NULL,Port INTEGER NOT NULL);" 


echo " --- Enter the total number of rows do you want ---" 
read cus_count 


echo "--- Enter the following details one by one---" 

port_num=8080 

for((i=1;i<=cus_count;i++)) 
do 


echo "enter the $i customer details" 

echo "---Enter the customer name---" 
read c_name 

customer=$(sqlite3 $databasename.db "select cus_name from $table_name") 



if [[ "$port_num" == "$port_num" ]]; then 
port_num=$(($port_num + 1)) 
fi 


if [[ $c_name != $customer ]] 
then 
    echo "---Enter the Status(Active/Inactive)---" 
    read c_status 



c_domain="$c_name" 

else 
    echo "---OOPS you entered customer name already available---" 
    echo "---Please enter new customer name---" 

i=$(($i - 1)) 

fi 

sqlite3 $databasename.db "INSERT OR IGNORE INTO $table_name (cus_name,cus_domain,cus_status, Port) VALUES(\"$c_name\",\"${c_domain,,}.com\",\"$c_status\",\"$port_num\") ;" 


done 

echo " --- Records from the $table_name ---" 

sqlite3 $databasename.db "select * from $table_name;" 
+0

ich das Problem gefunden ..es nur die cus_name den letzten Wert zu überprüfen, so es funktioniert nicht richtig.wenn es voll mit dem coulumn-wert ist, wird es korrekt ausgeführt.wie kann ich den vollen coulmn im script überprüfen ..? – Mahendranatarajan

Antwort

0

entnehmen Sie bitte unten auf "Bash-Skript arithmetische Operationen"

http://tldp.org/LDP/abs/html/arithexp.html

oder

http://tldp.org/LDP/abs/html/ops.html

+0

Ich behebe dieses Problem – Mahendranatarajan

+0

Ich fand das Problem ..Es überprüft den cus_name letzten Wert nur so, dass es nicht richtig funktioniert.wenn es überprüft voll von der coulumn Wert es korrekt ausgeführt.wie ich die volle Coulmn im Skript überprüfen kann ..? – Mahendranatarajan

Verwandte Themen