我经常使用 SCP 来复制文件 - 特别是与网络相关的文件。问题是,每当我这样做时,我都无法获得复制隐藏文件(例如,.htaccess)的命令。
我通常调用这个:
scp -rp src/ user@server:dest/
Run Code Online (Sandbox Code Playgroud)
这不会复制隐藏文件。我不希望有再次调用这个(做类似的东西scp -rp src/.* ...-并且具有奇怪.和..意义呢。
我在scp手册页中没有看到任何关于“包含隐藏文件”的内容。
我怎样才能做到这一点?
Mat*_*ons 74
那应该绝对匹配隐藏文件。源代码末尾的 / 表示“此目录下的每个文件”。尽管如此,测试和研究让您大吃一惊。这是愚蠢的行为。
“答案”是在源的末尾附加一个点:
scp -rp src/. user@server:dest/
在真正的答案是使用rsync。
cst*_*mas 28
你可以试试 rsync。它更适合这份工作:
rsync -av src/ user@server:dest/
(它的手册页值得一读。)
不要在源目录后面放斜线。您的代码如下所示:
scp -rp src user@server:dest/
Run Code Online (Sandbox Code Playgroud)
这将在远程机器上的“dest”下创建一个目录“src”,其中包含所有隐藏文件。它可能不是你想要的,但它会复制 src 中的隐藏文件。
小智 7
要仅复制隐藏文件,请使用此命令
scp -rp /path_to_copy_hidden/.[!.]* user@host:/path_to_paste/
Run Code Online (Sandbox Code Playgroud)
实际游戏是/.[!.]*指以.(hidden)开头的文件的标签
| 归档时间: |
|
| 查看次数: |
81176 次 |
| 最近记录: |