Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- I would like the read this to treat string surrounded by "" as one variable only.
- The file read by my script
- 20000 Black_Fluffy_Valkyrie_Helm "Black Fluffy Valkyrie Helm" 4 1 "" 0 "" 0 "" 1 4294967295 3 2 256 "" 0 1 875 "" "" ""
- 20001 Blue_Fluffy_Valkyrie_Helm "Blue Fluffy Valkyrie Helm" 4 1 "" 0 "" 0 "" 1 4294967295 3 2 256 "" 0 1 876 "" "" ""
- The script I was using before:
- read -p "Database username: " db_username
- if [[ -z $db_username ]]; then
- echo -e "Username cannot be empty.\n"; exit;
- fi
- read -p "Database password: " db_password
- read -p "Name of your item table? (Leave blank if default: item_db): " table_item
- if [[ -z $table_item ]]; then
- table_item="item_db";
- fi
- read -p "Name of the database that has the $table_item: " db_name
- if [[ -z $db_name ]]; then
- echo -e "Database name cannot be empty.\n"; exit;
- fi
- read -p "What is the filename that contains data to be inserted in item database? " file_item
- if [[ -z $file_item ]]; then
- echo -e "Cannot insert item to database without data.\n"; exit;
- fi
- cat $file_item | while read id name_english name_japanese type price_buy price_sell weight attack defence range slots equip_jobs equip_upper equip_locations weapon_level equip_level refineable view script equip_script unequip_script;
- do
- if [[ ! $id =~ ^[0-9]+$ ]]; then
- echo "ID must be an integer"; exit;
- fi
- if [[ $id<0 ]]; then
- echo "Invalid ID value"; exit;
- fi
- if [[ ! $type =~ ^[0-9]+$ ]]; then
- echo "Type must be an integer. $type was given."; exit;
- fi
- if [[ $type<0 || $type=1 || $type=9 || (($type>12 && $type!=18 )) ]]; then
- echo "Invalid Type value"; exit;
- fi
- if [[ -n $price_buy && ! $price_buy =~ ^[0-9]+$ ]]; then
- echo "Buying price value is invalid"; exit;
- fi
- if [[ -n $price_sell && ! $price_sell =~ ^[0-9]+$ ]]; then
- echo "Selling price value is invalid"; exit;
- fi
- if [[ ! weight =~ ^[0-9]+$ ]]; then
- echo "Weight price must be an integer"; exit;
- fi
- if [[ -n $attack && ! $attack =~ ^[0-9]+$ ]]; then
- echo "Attack value is invalid"; exit;
- fi
- if [[ -n $defence && ! $defence =~ ^[0-9]+$ ]]; then
- echo "Defence value is invalid"; exit;
- fi
- if [[ -n $range && ! $range =~ ^[0-9]+$ ]]; then
- echo "Range value is invalid"; exit;
- fi
- if [[ -n $slots && ! $slots =~ ^[0-9]+$ ]]; then
- echo "Slots value is invalid"; exit;
- fi
- if [[ -z $equip_jobs || ! $equip_jobs =~ ^[0-9]+$ || ! $equip_jobs < 0 ]]; then
- echo "Job value is invalid"; exit;
- fi
- if [[ -z $equip_upper || ! $equip_upper =~ ^[0-9]+$ || $equip_upper < 0 ]]; then
- echo "Class value is invalid"; exit;
- fi
- if [[ -z $equip_genders || ! $equip_genders =~ ^[0-9]+$ || $equip_genders < 0 || $equip_genders > 2 ]]; then
- echo "Gender value is invalid"; exit;
- fi
- if [[ -z $equip_locations || ! $equip_locations =~ ^[0-9]+$ || $equip_locations < 0 ]]; then
- echo "Item location value is invalid"; exit;
- fi
- if [[ -n $weapon_level && ! $weapon_level =~ ^[0-9]+$ || $weapon_level < 0 || $weapon_level > 4 ]]; then
- echo "Weapon Level value is invalid"; exit;
- fi
- if [[ -z $equip_level && ! $equip_level =~ ^[0-9]+$ ]]; then
- echo "Equip Level value is invalid"; exit;
- fi
- if [[ -n $refineable && ! $refineable =~ ^[0-9]+$ || $refineable < 0 || $refineable > 1 ]]; then
- echo "Refineable value is invalid"; exit;
- fi
- if [[ -n $view && ! $view =~ ^[0-9]+$ ]]; then
- echo "View value is invalid"; exit;
- fi
- echo "INSERT into $db_name (id, name_english, name_japanese, type, price_buy, price_sell, weight, attack, defence, range, slots, equip_jobs, equip_upper, equip_genders, equip_locations, weapon_level, equip_level, refineable, view, script, equip_script, unequip_script)";
- echo "VALUES ('$id','$name_english','$name_japanese','$type','$price_buy','$price_sell','$weight','$attack','$defence','$range','$slots','$equip_jobs','$equip_upper','$equip_genders','$equip_locations','$weapon_level','$equip_level','$refineable','$view','$script','$equip_script','$unequip_script');";
- #sleep (10);
- echo "1";
- #sleep (20);
- echo "2";
- done; #|| #mysql -u$db_username -p$db_password $db_name;
- #mysql -u$db_username -p$db_password $db_name;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement