@
xslong 公钥登录一直都有配置,我说的麻烦并不是输入密码,而是整个操作过程啦,如果我用的是 rz/sz ,比如我正在服务器上操作,刚好要上传一个文件,直接输入 rz ,回车,它就会弹窗让我选择,选择文件后就上传了,一气呵成。
但是如果像你说的 scp ,首先,我就要离开当前操作界面(因为当前在服务器),终端新开一个 Tab(或切换到已经打开的本地 Tab),然后 scp /path/to/filename serveralias:/home/username (我试过无法用 ~ 代替,必须写全 /home/username/),当然要传的文件可能刚好在当前文件夹,于是可以敲 scp filename serveralias:/home/username ,并且不用敲全,按 tab 可以补全,可是有时候这服务器不经常登录,serveralias 我可能忘了,我还得想一下(想的出来还好,想不出来还要去找),上传到服务器家目录还好,如果不是要上传到家目录,我还得想一下要传到哪个路径,或者干脆又切回服务器那边 pwd 出个路径再回来粘贴。
比起我直接在当前服务器操作窗口运行一个 rz ,scp 的这一顿操作下来,确实是麻烦很多,而且这只是上传文件。
如果是下载文件,比如我在终端操作服务器,操作到某个位置,刚好想下载其中的一个文件,名为“filename”,那么我只需要:sz fil ,按 tab 补全,回车,OK ,稍等一会儿文件就到了我本机的“下载”目录了,简直超级方便有木有。
而这个下载操作如果换成 scp ,我还得首先切到到另一个本地 Tab ,输入:scp serveralias: (这里还是会出现如果不太记得 alias 的问题),然后等等,我要下载的文件在哪个路径来着,再切回去服务器那边,pwd 一下复制到文件所在目录路径,然后再切回本地终端 Tab ,粘贴一下,等等,只粘贴了文件所在文件夹路径,文件名比较长我记不全,我还要回去再粘贴一次文件名,ok ,现在终于粘贴好了:`scp serveralias:/path/to/folder/filenamexxx .` 终于打完了,回车运行,开始下载。
其中我做了很多假设,现在我就假设你很熟悉 serveralias 和需要下载的文件路径,并且在当时就已经双击复制了要下载的文件名,那你至少还得切到本地终端 Tab ,然后输入 scp serveralias:/path/to/folder/,粘贴文件名,最后回车下载,而我用 sz ,直接在服务器那边 sz fil (假设要下载文件为 filenamexxxx ),按 tab 补全,回车,那也比你这方便很多,况且这是在假设你非常熟悉的记得 serveralias 和要下载的文件在服务器中的 path 的情况下。
你体会一下这种操作,哪个方便?😂 不过缺点就是 rz/sz 不支持传输文件夹,但是有替代的来了,换用 trz/tsz 就可以了,操作完全一样,但是支持文件夹,而且有传输进度条。