Bash scp失败?
Bash scp failure?
例如,我正在尝试做一个简单的 scp:
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/* .
明明文件夹里有文件,只是returnsscp: No match.
就失败了?我很确定这以前曾经工作过。当我尝试时:
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/1.txt .
它工作得很好。这与我试图通过 scp 阻止我传输所有文件的服务器有关吗?
编辑:已解决。主要问题是我在 tcsh 里面而不是 bash.
也许这样就可以了。
您必须将文字转义传递给 scp,这样远程机器就不会将其视为 glob。
例子>
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1\* .
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1* .
您需要在远程shell而不是本地[=26]上扩展*
(到所有文件) =].
在本地 shell 上防止 *
的 预扩展 的任何常规转义方法都可以:
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/'*' .
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/"*" .
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/\* .
或者您也可以引用整个文件名字符串:
scp tzj21@example.co.uk:'/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/*' .
scp tzj21@example.co.uk:"/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/*" .
例如,我正在尝试做一个简单的 scp:
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/* .
明明文件夹里有文件,只是returnsscp: No match.
就失败了?我很确定这以前曾经工作过。当我尝试时:
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/1.txt .
它工作得很好。这与我试图通过 scp 阻止我传输所有文件的服务器有关吗?
编辑:已解决。主要问题是我在 tcsh 里面而不是 bash.
也许这样就可以了。
您必须将文字转义传递给 scp,这样远程机器就不会将其视为 glob。
例子>
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1\* .
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1* .
您需要在远程shell而不是本地[=26]上扩展*
(到所有文件) =].
在本地 shell 上防止 *
的 预扩展 的任何常规转义方法都可以:
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/'*' .
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/"*" .
scp tzj21@example.co.uk:/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/\* .
或者您也可以引用整个文件名字符串:
scp tzj21@example.co.uk:'/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/*' .
scp tzj21@example.co.uk:"/home/tzj21/scratch/McAdam/chains/z0.5/temp_cc1/*" .