As a normal cp command, I'd expect to find the file in dbxcli/folderB/folder1/File-A.txt. Instead, File-A.txt is a folder that contains the whole original folder structure:
dbxcli.exe ls -l /dbxcli/folderB/folder1/File-A.txt/dbxcli/folderA/folder1
Revision Size Last modified Path
5c5e6bd04b28f314d4221 6 B 1 minute ago /dbxcli/folderB/folder1/File-A.txt/dbxcli/folderA/folder1/File-A.txt
I can see the reason why it is important to preserve the original structure when you specify more than one source (i.e. avoiding name conflicts on the destination), but when there is a classic cp <from> <to> structure, I think it would be more useful to use the specified destination as the actual destination where the file/folder will be placed. Otherwise you would not be able to copy a single file from A to B.
The purpose of this merge request is changing cp command so that it preserves the original folder structure if and only if more than one source has been specified. Otherwise, it will work as a classic cp, having one source and one actual destination.
Starting from the same preconditions as the previous example, now cp would work as follows:
dbxcli.exe cp dbxcli/folderA/folder1/File-A.txt dbxcli/folderB/folder1/File-A.txt
dbxcli.exe ls -l /dbxcli/folderB/folder1
Revision Size Last modified Path
5c611315ec247314d4221 6 B 25 seconds ago /dbxcli/folderB/folder1/File-A.txt
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
Loris Pozzobon seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account. You have signed the CLA already but the status is still pending? Let us recheck it.
Using
cp
command I noticed the following behaviour. Let's suppose I have File-A.txt within the following structure:while the following folder is empty:
Now I copy File-A.txt to
dbxcli/folderB/folder1/File-A.txt
:As a normal
cp
command, I'd expect to find the file indbxcli/folderB/folder1/File-A.txt
. Instead, File-A.txt is a folder that contains the whole original folder structure:I can see the reason why it is important to preserve the original structure when you specify more than one source (i.e. avoiding name conflicts on the destination), but when there is a classic
cp <from> <to>
structure, I think it would be more useful to use the specified destination as the actual destination where the file/folder will be placed. Otherwise you would not be able to copy a single file from A to B.The purpose of this merge request is changing
cp
command so that it preserves the original folder structure if and only if more than one source has been specified. Otherwise, it will work as a classiccp
, having one source and one actual destination.Starting from the same preconditions as the previous example, now
cp
would work as follows: