如何通过 ssh 传输文件并更改其在远程服务器上的权限,而无需登录两次

如何通过 ssh 传输文件并更改其在远程服务器上的权限,而无需登录两次
guy@home~% scp file.* [email protected]:/users/guy/public_html/kool-stuff/

好的,这会传输一些文件。然后我通常必须登录另一个终端并执行此操作,以便使它们在网络上可见(也许是因为服务器上的设置?我不知道。)

guy@server~$ cd ~/public_html/kool-stuff
guy@server~$ chmod 755 ./file.*

我可以在本地计算机上通过一个命令执行这两项操作吗?

答案1

scp有一个-p选项:

 -p      Preserves modification times, access times, and modes from the
         original file.

因此,在本地设置您的权限,然后执行scp.

或者,您可以使用tar

tar -zc file.* | ssh guy@... 'tar -zx -C ~/public_html/kool-stuff; chmod 755 ~/public_html/kool-stuff/file.*'

无论哪种情况,我都怀疑执行如果它们是文件,则需要权限。

相关内容