如何使用cp将文件复制到与目录中的一个目录名称相同的文件中?

如何使用cp将文件复制到与目录中的一个目录名称相同的文件中?

问题描述:

我是一个linux初学者,今天我有一个问题。我在网上搜索过它,但没有解决。
假设有一个名为1的文件和一个名为2的目录,如果我想复制file1并将新文件命名为2,我该如何完成它用户的命令cp?如何使用cp将文件复制到与目录中的一个目录名称相同的文件中?

mypc:testcp RVFU98$ ls -l 
total 0 
-rw-r--r-- 1 RVFU98 staff 0 Aug 27 11:14 1 
drwxr-xr-x 2 RVFU98 staff 68 Aug 27 11:13 2 
mypc:testcp RVFU98$ cp 1 2 
mypc:testcp RVFU98$ ls -l 
total 0 
-rw-r--r-- 1 RVFU98 staff 0 Aug 27 11:14 1 
drwxr-xr-x 3 RVFU98 staff 102 Aug 27 11:14 2 
mypc:testcp RVFU98$ cd 2 
mypc:2 RVFU98$ ls -l 
total 0 
-rw-r--r-- 1 RVFU98 staff 0 Aug 27 11:14 1 

我知道那是因为新的文件名相同的现有目录,但我不知道如何解决它,任何一个能帮助我吗?

+0

在你想要这个新文件'2'驻留在什么目录下? –

+0

@MarkPlotnick testcp目录 –

+1

你不能那样做。只能有一个文件或一个名称不能同时具有的目录。其他选项是创建一个小写的文件和大写的目录。 '触摸myfile; mkdir MYFILE' –

您无法通过现有目录复制文件。如果你知道存在2并且是一个目录,你可以用它来删除它,并用1代替它:

rm -rf 2 && cp 1 2 
+0

海事组织最好使用'rmdir'来不意外地打开一棵树。如果你想确保只有符合某些标准的东西被删除,那么还有'find ... -delete'。 – o11c