![在一台机器上将文件从一个用户复制到另一个用户](https://linux22.com/image/976727/%E5%9C%A8%E4%B8%80%E5%8F%B0%E6%9C%BA%E5%99%A8%E4%B8%8A%E5%B0%86%E6%96%87%E4%BB%B6%E4%BB%8E%E4%B8%80%E4%B8%AA%E7%94%A8%E6%88%B7%E5%A4%8D%E5%88%B6%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%E7%94%A8%E6%88%B7.png)
如何通过命令行将文件或目录从一个用户复制到同一台机器上的另一个用户?
假设 USER1 的主目录中有一个文件test.txt
。我需要将该文件复制到我机器上 USER2 的主目录中。我该如何通过命令行执行此操作?
答案1
假设您有sudo
权限,则以下命令可以执行。
sudo cp /home/USER1/FNAME /home/USER2/FNAME && sudo chown USER2:USER2 /home/USER2/FNAME
会将文件从 USER1 复制到 USER2,然后将 /home/USER2 中副本的所有者更改为 USER2
如果您没有sudo
权限,那么这两个用户将需要确保您对 USER1 目录具有读取权限,对 USER2 目录具有写入权限。如果您有这些访问权限,则可以输入以下命令:
cp /home/USER1/FNAME /home/USER2/FNAME
这将复制相关文件,但 USER2 可能无法操作该文件,直到他们获得适当的权限。
答案2
作为用户1:
cp [filename] /tmp
chmod 777 /tmp/[filename]
作为用户2:
cp /tmp/[filename] .
作为用户1:
rm /tmp/[filename]
答案3
如果您没有sudo
权限,也可以使用以下scp
方法localhost
:
scp file1 user2@localhost:/home/user2/
假设:
- 您拥有两位用户的登录信息
- 主机上已启用 SSH 服务器
- 可以通过 ssh 登录
答案4
使用以下命令复制文件
sudo cp /home/USER1/test.txt /home/USER2/test.txt
sudo chown USER2:USER2 /home/USER2/test.txt
使用以下命令复制目录
sudo cp -r /home/USER1/directory1 /home/USER2/directory1
sudo chown -R USER2:USER2 /home/USER2/directory1