Move a file

I looked around here and could not find a similar example. please help.
My goal is to mv a file like so: mv /tmp/dev.log /usr/local/dev.log.tst
using Ruby 1.8.7

ruby /tmp/test
/tmp/test:8: syntax error, unexpected ‘)’, expecting kDO_BLOCK

[email protected]:/tmp$ cat /tmp/test
#!/usr/bin/env ruby -w
require ‘ftools’;
require ‘fileutils’;

file=“dev.log”
FileUtils.cp("#{file}", “#{file}.copied”)
ZIPDIR = “/usr/local/”
FileUtils.mv("#{file}.copied",ZIPDIR"#{file}.tst")

Hi,

Am Donnerstag, 13. Aug 2009, 10:48:10 +0900 schrieb Derek S.:

ruby /tmp/test
/tmp/test:8: syntax error, unexpected ‘)’, expecting kDO_BLOCK

FileUtils.mv("#{file}.copied",ZIPDIR"#{file}.tst")
^^^

Try it with something like (untested)

“#{ZIPDIR}/#{file}.tst”
File.join ZIPDIR, “#{file}.tst”

Syntax errors are the easiest to solve.

Bertram

Bertram S. wrote:

Hi,

Am Donnerstag, 13. Aug 2009, 10:48:10 +0900 schrieb Derek S.:

ruby /tmp/test
/tmp/test:8: syntax error, unexpected ‘)’, expecting kDO_BLOCK

FileUtils.mv("#{file}.copied",ZIPDIR"#{file}.tst")
^^^

Try it with something like (untested)

“#{ZIPDIR}/#{file}.tst”
File.join ZIPDIR, “#{file}.tst”

Syntax errors are the easiest to solve.

Bertram

So in this line:

ZIPDIR"#{file}.tst"

you determined that you needed to use string interpolation for the
variable file, but because ZIPDIR is capitalized, you didn’t think
string interpolation was necessary for that variable, and instead you
just wrote the variable next to the string?

7stud – wrote:

Bertram S. wrote:

Hi,

Am Donnerstag, 13. Aug 2009, 10:48:10 +0900 schrieb Derek S.:

ruby /tmp/test
/tmp/test:8: syntax error, unexpected ‘)’, expecting kDO_BLOCK

FileUtils.mv("#{file}.copied",ZIPDIR"#{file}.tst")
^^^

Try it with something like (untested)

“#{ZIPDIR}/#{file}.tst”
File.join ZIPDIR, “#{file}.tst”

Syntax errors are the easiest to solve.

Bertram

So in this line:

ZIPDIR"#{file}.tst"

you determined that you needed to use string interpolation for the
variable file, but because ZIPDIR is capitalized, you didn’t think
string interpolation was necessary for that variable, and instead you
just wrote the variable next to the string?

This was what did it!
Thank you Sir!

file=“dev.log”
FileUtils.cp("#{file}", “#{file}.copied”)
ZIPDIR = “/usr/local/”
FileUtils.mv("#{file}.copied","#{ZIPDIR}#{file}.ts

Hi,

Am Freitag, 14. Aug 2009, 08:46:49 +0900 schrieb Derek S.:

Thank you Sir!

FileUtils.mv("#{file}.copied","#{ZIPDIR}#{file}.ts

I think another slash won’t hurt in case you occur to forget it.

FileUtils.mv("#{file}.copied","#{ZIPDIR}/#{file}.tst"
^^^

Bertram

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs