Sample code for 30+ languages & platforms
Ruby

Quote and SendCommand

See more FTP Examples

Demonstrate the Quote and SendCommand methods.

Chilkat Ruby Downloads

Ruby
require 'chilkat'

success = false

# This example requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

ftp = Chilkat::CkFtp2.new()

ftp.put_Hostname("ftp.example.com")
ftp.put_Username("login")
ftp.put_Password("password")

# Connect and login to the FTP server.
success = ftp.Connect()
if (success != true)
    print ftp.lastErrorText() + "\n";
    exit
end

# Tell the FTP object to keep an in-memory session log
# so we can see the commands sent to the server,
# and the responses received back.
ftp.put_KeepSessionLog(true)

# Change the current remote directory via the Quote method:
success = ftp.Quote("CWD junk")
if (success != true)
    print ftp.lastErrorText() + "\n";
    exit
end

# Move back up 
# In this case, ChangeRemoteDir sends "CWD .." to the FTP server.
success = ftp.ChangeRemoteDir("..")
if (success != true)
    print ftp.lastErrorText() + "\n";
    exit
end

# Do the same via the SendCommand method where the
# raw FTP server response is returned:
serverResponse = ftp.sendCommand("CWD junk")
if (ftp.get_LastMethodSuccess() != true)
    print ftp.lastErrorText() + "\n";
else
    print serverResponse + "\n";
end

success = ftp.Disconnect()

print "Session Log:" + "\n";
print ftp.sessionLog() + "\n";