Unknown command '\;'


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Unknown command '\;'
# 1  
Old 05-07-2019
Unknown command '\;'

Hello,
I am running ubuntu 16.04 .
Below script gives: "unknown command '\;'

Code:
counter=105
while read COL1 COL2 COL3
do
let counter++
url="http://localhost/test/$COL1.$COL2.$COL3";
mysql -uroot -D mydatabase -pmypasswd -e "SELECT video_id FROM video_series_files WHERE id IN \
(SELECT video_id FROM video_series_files WHERE url like '%$COL1%.mkv')" > video_id
sed -i '/video_id/d' video_id;
sed -i '/--/d' video_id;
while read -r line
do
mysql -uroot -D mydatabase -pmypasswd -e "INSERT INTO video_series_files (id, video_id, file_type, \
protocol, url, languages, quality, accessed ,status ) VALUES ('.$counter.', \
'$line', 'sub', 'custom', '$url', 'a:1:{i:0;s:2:\'$COL2'\;}',  '', '1', '1' )";
done<video_id
done<2

2
Code:
Mr.Smith.Goes.to.Washington     en      srt
Mr.Smith.Goes.to.Washington     fr      srt
Mr.Smith.Goes.to.Washington     el      srt

I have checked the database and I confirm that id 103 and following lines are already empty.
Could you please let me know why I receive this error?


Thank you
Boris

Last edited by baris35; 05-07-2019 at 08:53 PM..
# 2  
Old 05-07-2019
Code:
done<2

I do not see where 2 is open for read. 2 is normally stderr. This is abnormal, IMO. It can break things behind the scenes.
This User Gave Thanks to jim mcnamara For This Post:
# 3  
Old 05-08-2019
Quote:
Originally Posted by baris35
...

Could you please let me know why I receive this error?

Could you please let us know where you receive this error?


Just shooting in the dark, I'd guess it's here: \'$COL2'\;} when the semicolon is escaped in lieu of the second single quote. And, as jim mcnamara already pointed out, the redirection should be reconsidered.
This User Gave Thanks to RudiC For This Post:
# 4  
Old 05-08-2019
Hello,
Thank you for your answers. (To make it easily readable, long parts of the codes are hidden now)
Upon your recommendation, I tested shown below correlations:
Code:
while read COL1 COL2 COL3 && while read -r line <&3; do
..
..
..
'$line', 'sub', 'custom', '$url', 'a:1:{i:0;s:2:\"$COL2"\;}',  '', '1', '1' )";
done<video_id 3<2

Also tried below one:

Code:
while read COL1 COL2 COL3 && while read -r line <&3; do
..
..
..
'$line', 'sub', 'custom', "$url', 'a:1:{i:0;s:2:\"$COL2"\;}",  '', '1', '1' )";
done<video_id 3<2

And the last one:

Code:
while read COL1 COL2 COL3 && while read -r line <&3; do
..
..
..
'$line', 'sub', 'custom', "$url', 'a:1:{i:0;s:2:\"$COL2\";}",  '', '1', '1' )";
done<video_id 3<2

Still investigating. I doubt second loop is not in correct position as input of second loop is created by first loop.
PS: when bold part is written into sql, output in sql database should be shown like:
| a:1:{i:0;s:2:"fr";} |

Kind regards
Boris

Last edited by baris35; 05-08-2019 at 07:50 AM..
# 5  
Old 05-08-2019
That code snippet seems a bit overcomplicated with its double loop and sed operating on intermediate files. Do you know about the (oracle) set head off equivalent in mysql: -N and -s? Et voila, two sed invocations gone. You then could pipe the first select(id numbers) into the second loop.

What's the result of the first select per every single loop iteration given we have three times the same film title in file 2 ?

One more question: is 2 the name of the input file, and thus NOT a file descriptor?

Last edited by RudiC; 05-08-2019 at 08:15 AM..
# 6  
Old 05-08-2019
Hello Rudic,
* I do not know the equivalent of set head off
* As output of first loop looks like below, I do not know how to pipe it to second mysql process.
Code:
video_id
3

That's why, first I remove first line, then read it again with second loop.

* 2 is not a file descriptor. It includes file basename , language and file extension in tab separated format.

filename: 2
Code:
Mr.Smith.Goes.to.Washington     en      srt
Mr.Smith.Goes.to.Washington     fr      srt
Mr.Smith.Goes.to.Washington     el      srt

*Output of first mysql query:
Quote:
What's the result of the first select per every single loop iteration given we have three times the same film title in file 2 ?
output is video_id file:
Code:
video_id
3

Last status:
Code:
while read COL1 COL2 COL3 && while read -r line <&3; do
..
..
..
'$line', 'sub', 'custom', '$url', 'a:1:{i:0;s:2:\"$COL2"\;}',  '', '1', '1' )";
done<2 3<video_id

Kind regards
Boris

Last edited by baris35; 05-08-2019 at 08:44 AM..
# 7  
Old 05-08-2019
How about preparing an sql- file outside mysql using e.g. awk and then executing this with a single mysql invocation? Like create barisprep:
Code:
{print  "INSERT INTO video_series_files (id, video_id, file_type, protocol, url, languages, quality, accessed ,status )" \
        " SELECT '." ++CNT ".', video_id, 'sub', 'custom', 'http://localhost/test/" $1 "." $2 "." $3 "', 'a:1:{i:0;s:2:'" $2 \
        "';}', '', '1', '1' FROM video_series_files WHERE url like '%" $1 "%.mkv';"}

, running it with
Code:
awk -vCNT=$counter -fbarisprep 2 > barisprep.sql

resulting in

Code:
INSERT INTO video_series_files (id, video_id, file_type, protocol, url, languages, quality, accessed ,status ) SELECT '.106.', video_id, 'sub', 'custom', 'http://localhost/test/Mr.Smith.Goes.to.Washington.en.srt', 'a:1:{i:0;s:2:'en';}', '', '1', '1' FROM video_series_files WHERE url like '%Mr.Smith.Goes.to.Washington%.mkv';
INSERT INTO video_series_files (id, video_id, file_type, protocol, url, languages, quality, accessed ,status ) SELECT '.107.', video_id, 'sub', 'custom', 'http://localhost/test/Mr.Smith.Goes.to.Washington.fr.srt', 'a:1:{i:0;s:2:'fr';}', '', '1', '1' FROM video_series_files WHERE url like '%Mr.Smith.Goes.to.Washington%.mkv';
INSERT INTO video_series_files (id, video_id, file_type, protocol, url, languages, quality, accessed ,status ) SELECT '.108.', video_id, 'sub', 'custom', 'http://localhost/test/Mr.Smith.Goes.to.Washington.el.srt', 'a:1:{i:0;s:2:'el';}', '', '1', '1' FROM video_series_files WHERE url like '%Mr.Smith.Goes.to.Washington%.mkv';

and then source it like
Code:
mysql -uroot -D mydatabase -pmypasswd -sN  < barisprep.sql


EDIT: or even
Code:
mysql -uroot -D mydatabase -pmypasswd -sN  < $(awk -vCNT=$counter -fbarisprep 2)


Last edited by RudiC; 05-08-2019 at 09:30 AM..
These 2 Users Gave Thanks to RudiC For This Post:
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Programming

Arduino-cli - Uploading to Unknown Chinese Arduino Boards using the Arduino Command Line Interface

In my further exploration of Arduino, today I decided to install the arduino-cli on my mac today. https://github.com/arduino/arduino-cli I followed the instructions for macOS but when I got to this part: arduino-cli board list I got the dreaded "Unknown" Fully Qualified Board Name... (1 Reply)
Discussion started by: Neo
1 Replies

2. Shell Programming and Scripting

Unknown fs on usb?

Error mounting: mount exited with exit code 1: helper failed with: mount: wrong fs type, bad option, bad superblock on /dev/sdb1, missing codepage or helper program, or other error In some cases useful info is found in syslog - try dmesg | tail or soThis happens when I try... (17 Replies)
Discussion started by: 1in10
17 Replies

3. Shell Programming and Scripting

There's a unknown command on line 1 and i don't know whats causing it.

My OS is Linux GL version 2.4.26. I am trying to make a shell script that outputs a chart displaying info of who is online, boot time, and the real time, I have manage to get it to work, but I still get the error "./user/script: line 1: : command not found." I do in fact have access to root, if... (2 Replies)
Discussion started by: thatguy565
2 Replies

4. Solaris

Unknown fstype?

Dear all I have formatted/labeled/partitioned my new disk but when trying to mount it is returning 'unknown fstype' .Can you please let me know how to solve this problem? Thank you (37 Replies)
Discussion started by: hadimotamedi
37 Replies

5. AIX

Unknown VGs

Hi Guys, I found on one of the server there are 2 VG's which I dont have any Idea of who created .. as below bash-3.00$ lsvg old_rootvg rootvg datavg altinst_rootvg altinst_rootvg under is meant for alternate disk installation.. But I'm not sure for which version of OS it was... (5 Replies)
Discussion started by: kkeng808
5 Replies

6. HP-UX

'SP2-0734: unknown command beginning "elect' Error

My environment is HP-UX... NIS CEL | uname -a HP-UX s53kj113 B.11.11 U 9000/800 1510201964 unlimited-user license I ran this command directly from the server's sqllplus. Logically, it should have work. But in my case, it always escaped the 1st character of the next command after the... (3 Replies)
Discussion started by: aimy
3 Replies

7. Shell Programming and Scripting

Sed unknown command

Hi everyone, I am trying to replace a string that contains a space using sed. A typical input file is: CATEGORY=1 1:1.0 CATEGORY=2 13:1.0 CATEGORY=3 1:99.0 CATEGORY=8 14:1.0 CATEGORY=11 1:1.0 I want to use a string (as it can change) to make replacements using ... (3 Replies)
Discussion started by: BlueberryPickle
3 Replies

8. Solaris

PING - Unknown host 127.0.0.1, Unknown host localhost - Solaris 10

Hello, I have a problem - I created a chrooted jail for one user. When I'm logged in as root, everything work fine, but when I'm logged in as a chrooted user - I have many problems: 1. When I execute the command ping, I get weird results: bash-3.00$ usr/sbin/ping localhost ... (4 Replies)
Discussion started by: Przemek
4 Replies

9. Solaris

<drive type unknown> when format command run

Hi, we are running solaris 9 on V280R. Due to power failure, one disk's label and lost its details like drive type etc. Disk details: <SUN72G cyl 14087 alt 2 hd 24 sec 424> single partition on slice 6 with UFS. The below i see when i run "format" command ..... ..... 4.... (1 Reply)
Discussion started by: prvnrk
1 Replies

10. UNIX for Dummies Questions & Answers

unknown host

Hello all I'm new to this site and I have to say that ,it is just awesome. I was able to get most of my questions answered by reading the archives. I've been a UNIX programmer for a while now but new to administration. I just installed SunOS 5.9 on my desktop ( i86pc) . Everything... (3 Replies)
Discussion started by: luft
3 Replies
Login or Register to Ask a Question