Bash SSH登录后如何清除终端?
我正在尝试通过ssh连接到服务器。一旦连接,应清除端子 由于生成了密钥,我可以通过Bash SSH登录后如何清除终端?,bash,ssh,terminal,Bash,Ssh,Terminal,我正在尝试通过ssh连接到服务器。一旦连接,应清除端子 由于生成了密钥,我可以通过ssh连接到服务器usr@svr而不提示输入密码。这很有效 为了摆脱 Debian GNU/Linux系统附带的程序是免费的 软件;描述了每个程序的精确分布项 在/usr/share/doc/*/copyright中的各个文件中 在某种程度上,Debian GNU/Linux绝对没有保修 适用法律允许的 我通常只需键入清除。但是,我不希望每次都键入此内容,而是将过程自动化 sshusr@svr“清除”-->“未设置
ssh连接到服务器usr@svr
而不提示输入密码。这很有效
为了摆脱
Debian GNU/Linux系统附带的程序是免费的
软件;描述了每个程序的精确分布项
在/usr/share/doc/*/copyright中的各个文件中
在某种程度上,Debian GNU/Linux绝对没有保修
适用法律允许的
我通常只需键入清除。但是,我不希望每次都键入此内容,而是将过程自动化
sshusr@svr“清除”
-->“未设置术语环境变量。”。我在谷歌上搜索了几个关于未设置环境变量的解决方案,但没有成功
因此,我尝试了ssh-tusr@vr“清除”
;这将成功清除终端,但也会立即关闭连接(“连接到IP已关闭”)。计算机连接到服务器,清除屏幕,关闭连接
下一次尝试是在服务器上创建一个bash脚本,以便在连接到它之后运行
#/bin/bash
clear
## cl.sh, chmod +x
sshusr@svr./cl.sh
-->“未设置术语环境变量”
另一种尝试是创建连接到服务器的bash脚本,并通过ENDSSH
清除终端
#/bin/bash
ssh usr@svr <<'ENDSSH'
clear
ENDSSH
## sc.sh, chmod +x
我是这方面的初学者,所以如果我犯了一个非常明显的错误,请耐心等待。我试图尽可能详细,并在发布前对此进行研究,但找不到我问题的答案。例如,“清除”以外的命令可以工作(ssh)usr@svrls
),但这对我没有帮助。您的问题所指的文本是每日信息(MOTD)的一部分
如果您可以成为服务器上的root用户,则只需在/etc/motd
中修改该消息即可。请注意,根据服务器的分布情况,此文件通常会以某种方式生成(覆盖任何更改),例如,在Debian上,它是在引导时从/etc/motd.tail
生成的,因此您可能需要更改该文件
请参阅手册页motd(5)
要防止打印该消息,您可以在主目录(服务器上)中创建一个名为.hushlogin
的文件。SSH连接到服务器并运行命令touch~/.hushlogin
。如果该文件存在,则登录shell将不再打印您看到的motd(当日消息)。所有启动消息都在motd
文件(/etc/motd
)中定义
但是,如果希望清除控制台以增加隐私,请添加以下代码:
[ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q
您的.bash\u档案
或.bash\u注销
(注销时)。或者使用清除命令
注销时清除屏幕是Debian Linux发行版的默认行为。我找到了另一个简单的解决方案
ssh -t usr@svr 'clear;bash'
谢谢你的意见。但是,上面提到的使用.hushlogin的解决方案似乎更简单。不客气。我同意你的观点,它也更好地符合“用户”的观点。
ssh -t usr@svr 'clear;bash'