At line 3 changed one line |
A leading "L" character instructs the client to apply the command to the local client versus to the remote client. lls would sit your current local folder, lcd changes the local folder. Only the file transfer commands do not have an "L" version. (put, get, diffput, diffget) If a path being references has a space in it, the path must be quoted. Example: put "some file.txt" "/some folder/my file.txt". Backslash quote escaping is permitted as well. |
A leading "L" character instructs the client to apply the command to the local client versus to the remote client. lls would sit your current local folder, lcd changes the local folder. Only the file transfer commands do not have an "L" version. (put, get, diffput, diffget) If a path being referenced has a space in it, the path must be quoted. Example: put "some file.txt" "/some folder/my file.txt". Backslash quote escaping is permitted as well. The "local" client doesn't need to be local at all though, both clients can be remote and files can be streamed through the CrushClient. Commands can be sent into he background with a "&" at the end of them. Example: |
{{{ |
put file.txt remote.txt& |
}}} |
At line 8 added 2 lines |
---- |
There are different ways to start CrushClient. If started with a script, no input will be taken, all input will be read line by line from the script as if you were physically typing it. Don't forget the quit command at the end or the client will wait indefinitely for more input... A script is typically ended with two lines. wait, then quit. |
At line 15 added one line |
java -jar CrushTunnel.jar inline_script "connect https://demo:demo@crushftp.com/demo/;put file.txt;wait;quit;" |
At line 11 changed one line |
Different ways to start CrushClient. If started with a script, no input will be taken, all input will be read line by line from the script as if you were physically typing it. |
---- |
Example: http://user:pass@domain.com:port/path/ or https://crushftp.com/ or https://crushftp.com/demo/ The url must end with a slash. User and pass is optional in the URL, you will be prompted for them if omitted. |
---- |
!!Commands |
At line 17 changed 2 lines |
Example: http://user:pass@domain.com:port/path/ or https://crushftp.com/ or https://crushftp.com/demo/ The url must end with a slash. User and pass is optional in the URL, you will be prompted for them if omitted. |
|
---- |
Disconnects from the currently connected client, for use when you want to change what client your connected with. |
At line 23 changed 2 lines |
Disconnects from the currently connected client, for use when you want to change what client your connected with. |
|
---- |
Transfers file/directory from remote client to local client. Example: get test.txt or get test.txt test_local.txt or get /folder/test.txt file.txt or get /folder/test.txt /local/test.txt\\ |
reget will resume the download based on the target file's size. |
At line 26 changed one line |
put /local/file/path [remote file path] |
get /remote/file/path [local file path] |
reget /remote/file/path [local file path] |
At line 28 changed 2 lines |
Transfers file/directory from local client to remote client. Example: put test.txt or put test.txt test_remote.txt or put /folder/test.txt file.txt or put /folder/test.txt /remote/test.txt |
|
---- |
Transfers file/directory from local client to remote client. Example: put test.txt or put test.txt test_remote.txt or put /folder/test.txt file.txt or put /folder/test.txt /remote/test.txt\\ |
reput will resume the put based on the size of the remote item.\\ |
appe will start appending the current file to the target file. |
At line 31 changed one line |
diffput |
put /local/file/path [remote file path] |
reput /local/file/path [remote file path] |
appe /local/file/path [remote file path] |
At line 48 added one line |
---- |
At line 34 removed one line |
|
At line 36 changed one line |
get /remote/file/path [local file path] |
diffput |
At line 38 changed 2 lines |
Transfers file/directory from remote client to local client. Example: get test.txt or get test.txt test_local.txt or get /folder/test.txt file.txt or get /folder/test.txt /local/test.txt |
|
---- |
Similar to the get command, but first calculates the differences between the files and then transfers just those differences. Remote side must be a CrushFTP server. |
At line 43 changed 2 lines |
Similar to the get command, but first calculates the differences between the files and then transfers just those differences. Remote side must be a CrushFTP server. |
|
---- |
Prints out a unix styled directory listing. |
At line 53 changed 2 lines |
Prints out a unix styled directory listing of the remote or local side. |
|
---- |
Deletes an item. Example: del /remote/test.txt |
At line 59 changed 2 lines |
Deletes a remote file. Example: del /remote/test.txt |
|
---- |
Gets info about the selected item and prints to the screen. |
At line 65 changed one line |
Gets info about the selected item and prints to the screen. |
---- |
Lists the segments that are different between the two files. |
{{{ |
diff local/path remote/path |
}}} |
---- |
Changes the current working directory for the local or remote client. |
{{{ |
cd |
cwd |
lcd |
lcwd |
}}} |
---- |
Prints the current working directory for the local or remote client. |
{{{ |
pwd |
lpwd |
}}} |
---- |
Creates a new folder. |
{{{ |
mkd /remote/path |
lmkd /local/path |
}}} |
---- |
Renames an item, both must be specified in the command for source and destination. |
{{{ |
rename /remote/path1 /remote/path2 |
mv /remote/path1 /remote/path2 |
lrename /local/path1 /local/path2 |
lmv /local/path1 /local/path2 |
}}} |
---- |
Toggles the use of FTP passive mode. |
{{{ |
pasv |
lpasv |
---- |
The anything section is passed to the remote FTP server directly. |
{{{ |
quote anything |
lquote anything |
}}} |
---- |
Sets the modified date to the specified time. |
{{{ |
mdtm /remote/path yyyyMMddHHmmss |
lmdtm /local/path yyyyMMddHHmmss |
}}} |
---- |
Quits the CrushClient, aborting any in-progress transfers. |
{{{ |
quit |
}}} |
---- |
Sets a configuration parameter on the client. Undocumented for now, use the UI in CrushFTP to setup a config on a connection item and then view the raw XML for the config param it configured. |
{{{ |
config param value |
lconfig param value |
}}} |
---- |
Sets a variable that can be later referenced, or sets different client properties on how the client acts. |
Example: set max_threads 10 |
{{{ |
set param value |
At line 147 added 11 lines |
Param list: |
download_threads (default = 0 which is unlimited) |
upload_threads (default = 0 which is unlimited) |
skip_modified_and_size (default is true) |
skip_modified (default is false, ignored if skip_modified_and_size is true) |
skip_size (default is false, ignored if skip_modified is true or skip_modified_and_size is true) |
keep_date (default is true) |
multithreaded (default is true) |
}}} |
---- |
Queues up commands in a list so they can later on be executed. Built a list of file transfers to do in a queue, then run it with the execute command. Useful for scripting load to the server. |
At line 159 added 7 lines |
queue {id} add command |
queue {id} reset |
queue {id} run |
}}} |
---- |
Waits for active transfers to complete with the local or remote client and prints occasional statistics about in-progress transfers. |
{{{ |
At line 71 changed 2 lines |
waits for active transfers to complete with the local or remote client and prints occasional statistics about in progress transfers. |
|
---- |
Pauses CrushClient for the specific milliseconds to impose delays in command processing. |
At line 76 changed 2 lines |
Pauses CrushClient for the specific milliseconds to impose delays in command processing. |
|
---- |
Prints stats about current in progress transfers one time. |
At line 79 changed 2 lines |
info |
linfo |
info [all/clear] |
linfo [all/clear] |
At line 82 changed 2 lines |
prints stats about current in progress transfers one time. |
|
---- |
Aborts all in progress transfers. |
At line 87 changed 2 lines |
Aborts all in progress transfers. |
|
---- |
Kill app after pre-determined time amount with an error code exit. |
At line 90 changed one line |
quit |
kill 30 secs |
kill 30 s |
kill 1 min |
kill 1 m |
kill 100 hours |
kill 100 h |
kill 2 days |
kill 2 d |
kill 0 s (aborts kill) |
At line 92 changed 2 lines |
exits the CrushClient, aborting any in progress transfers. |
|
---- |
Timeout on individual file transfer items FTP, HTTP(s), SFTP in seconds. |
At line 95 changed one line |
diff local/path remote/path |
timeout 30 |
At line 97 changed one line |
Lists the segments that are different between the two files. |
---- |
Start a tunnel with a server so you can connect through it. After starting you can connect through the tunnels port. Typically its 55555. |
{{{ |
tunnel https://www.crushftp.com/ (you will be prompted for credentials) |
tunnel https://demo:demo@www.crushftp.com/ (credentials provided inline in the URL) |
tunnel list (list running and stopped tunnels) |
tunnel stop {id} (stop a tunnel id you got from the list command, ids start at 1 and count up for each tunnel you create. Once stopped, a tunnel id can't be started.) |
tunnel log (prints out the recent tunnel log messages) |
At line 212 added 12 lines |
connect http://127.0.0.1:55555/ (now you can connect normally through the tunnel that was just started) |
}}} |
---- |
Take a thread stack trace for what all CrushClient is currently working on (debug purposes only) |
{{{ |
dumpstack |
}}} |
---- |
Take a memory dump of the CrushClient (debug purposes only) |
{{{ |
dumpmemory |
}}} |