我想简单地将 3 个目录从我的主目录交换到同事的主目录(我没有对该目录的写权限),如果可能的话,可能使用安全复制。我不擅长使用 Linux 命令行,所以我不确定该怎么做,如果有人能帮我解决这个问题,我将不胜感激。我想它应该看起来像这样
scp -r /home/user1/directoy1 /home/user2/directoy1
scp -r /home/user1/directoy2 /home/user2/directoy2
scp -r /home/user1/directoy3 /home/user2/directoy3
我是否需要指定同事的登录名,以便当他输入密码时就可以复制文件?
谢谢你的帮助,迈克尔
答案1
我不确定这是否是最简单的解决方案,但至少当您的同事有权访问目标目录时,这应该有效。
scp -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1
您还可以使用功能更强大的工具 rsync(强烈推荐):
rsync -r /home/user1/directoy1 user2@localhost:/home/user2/directoy1
如果你需要双向同步文件,你应该使用一些文件同步工具,例如齐奏。
答案2
scp
不是一个在同一主机上安全地复制文件的工具,而是一个使用 SSH 协议跨网络复制文件的工具。
对于您来说,您可以稍微“作弊”,在本地主机上使用 SSH 来使用您的同事凭证登录,从而获得良好的访问权限:
scp -r /home/user1/directory1 username@localhost:
这会将文件复制directory1
到您同事的主目录中。但请注意,此命令会要求您同事输入密码。
如果这不是一次性复制,更好的方法是设置目录的权限,以便您可以在其中写入,或者使用共享目录进行文件传输。