====== Tabli - Data Move Command ====== ===== About ===== ''data move'' is a [[docs:tabli:tabli|tabli]] [[docs:tabli:command|command]] that supports the [[docs:op:move|move data operation]]. This is an alias command of the [[transfer|data transfer command]] where the ''transfer-operation'' [[docs:tabli:option|option]] has been set to ''move''. ===== Example ===== ==== Change the file extension ==== The below command will: * select all [[:docs:resource:text|text file]] * from the [[:docs:connection:cd|current directory]] * and change the extension to `md` in the [[:docs:resource:target_uri|target uri]] thanks to the [[:docs:common:globbing|back reference $1]] ```ps tabli data move *.txt@cd '$1.md@cd' ``` ===== Prerequisites ===== A [[docs:op:move|move operation]] is logically a [[copy|copy operation]] followed by a [[drop|drop]] of the [[docs:flow:source|source]]. Therefore this operations should follow the [[copy#prerequisites|prerequisites of the copy operation]] ===== Syntax ===== tabli data move -h Tabli data move =============== Move one or more data resources. A `move` operation will perform: * a `rename` if the target connection and the source connection are the same * a `copy` and `drop` of the source if the target connection and the source connection are not the same Note: This is just a alias command to the `transfer` command with the transfer operation option set to `move` . Examples -------- 1 - To move the table `time` from the data store `sqlite` into the file `time.csv`, you would execute tabli data move time@sqlite time.csv 2 - To move the file `foo.txt` to the `dir` directory `dir/foo.txt`, you would execute tabli data move foo.txt dir/foo.txt Syntax ------ tabli data move [options|flags] where: Arguments: A data selector that select the data resources to transfer A target data URI that defines the destination (Example: [table]@connection). If the target data uri has no name, the name will be the name of the source. Cross Data Transfer Options: -bs,--buffer-size defines the size of the memory buffer between the source and target threads -mdu,--metrics-data-uri defines a target data uri where the data metrics should be exported -sfs,--source-fetch-size defines the fetch size against the source connection -tbs,--target-batch-size defines the batch size against the target data resource -tcf,--target-commit-frequency defines the commit frequency in number of batches against the target data resource -tw,--target-worker defines the target number of thread against the target connection -wbv,--with-bind-variables defines if bind variables are used in the SQL statement Data Definition Options: -sa,--source-attribute Set a source data resource attribute -ta,--target-attribute Set a target data resource attribute Transfer Operation Options: -so,--source-operation defines the data operation (drop or truncate) on the source after transfer. Note: A `move` operation will drop the source. -to,--target-operation defines the data operations (replace, truncate) on the existing target before transfer. Selection Options: -wd,--with-dependencies If set, the dependencies will be also selected Global Options: -cf,--conf The path to a configuration file -cv,--connection-vault The path where the connection vault is located -h,--help Print this help -l,--log-level Set the log level -ns,--not-strict A minor error will not stop the process. -odu,--output-data-uri defines the output data uri for the feedback data (default: console) -oo,--output-operation defines the data operations (replace, truncate) on an existing output resource before transfer. -oop,--output-transfer-operation defines the output transfer operation (insert, update, merge, copy). Default to `copy` for a file system and `insert` for a database. -pp,--passphrase A passphrase (master password) to decrypt the encrypted values