Cp
Copy <source>
... to <dest>
, where both might be one of:
<local_path> hdfs://<path> gs://<bucket>/<path> s3://<bucket>/<path> sftp://<path>
So on local files it calls standard ‘cp’ command to copy files.
When <source>
and/or <dest>
contain URI like ‘hdfs://’, ‘s3://’,
‘gs://’ or ‘sftp://’ (i.e. Hadoop FS, Amazon S3, Google Storage and SFTP), then it calls
appropriate commands to copy from/to such source/destination.
When more than one <source>
is specified, then URI prefix must be the same for all of them.
Note: All above URIs are supported only in EVL Enterprise Edition.
- Cp
-
is to be used in EVS job structure definition file or in EWS workflow structure definition.
- evl cp
-
is intended for standalone usage, i.e. to be invoked from command line.
Using this command might keep your code clean, but for more complex copying better use appropriate commands directly, as it gives you all the available options for particular storage or protocol type.
Synopsis
Cp [-f|--force] <source>... <dest> evl cp [-f|--force] <source>... <dest> [--verbose] evl cp ( --help | --usage | --version )
Options
- -f, --force
-
destination will be overwritten if exists
- -p
-
preserve mode (i.e. permission), timestamps and ownership
Standard options:
- --help
-
print this help and exit
- --usage
-
print short usage information and exit
- -v, --verbose
-
print to stderr info/debug messages of the component
- --version
-
print version and exit
Examples
These lines in EVL job (an ‘evs’ file):
Cp hdfs:///some/path/to/file /some/local/path/ Cp /some/local/path/file hdfs:///some/path/ Cp hdfs:///some/path/file hdfs:///other/path/ Cp /some/local/path/file /other/local/path/
will call (with handling fails in proper EVL way):
$HADOOP_FS_GET hdfs:///some/path/file /some/local/path/ $HADOOP_FS_PUT /some/local/path/file hdfs:///some/path/ $HADOOP_FS_CP hdfs:///some/path/file hdfs:///other/path/ cp /some/local/path/file /other/local/path/
where defaults for ‘HADOOP_FS_*’ variables are:
export HADOOP_FS_GET=${HADOOP_FS_GET:-"hadoop fs -get"} export HADOOP_FS_CP=${HADOOP_FS_CP:-"hadoop fs -cp"} export HADOOP_FS_PUT=${HADOOP_FS_PUT:-"hadoop fs -put"}