Xshell常见问题和常用配置
本文主要介绍Xshell的常见问题和常见配置。
说明:
- 本文内容主要是针对“Xshell 5”和“Xshell 6”版本的,其他版本需根据实际情况进行调整;
- 涉及到“属性”配置,如果当前Xshell已经连接到了一台服务器,那么在此会话窗口中进行的属性配置,只会针对该服务器的会话生效;如果想要对所有的会话属性进行配置,则需要在未连接服务器的会话窗口中,进行相关的属性配置操作。
1 常见问题
1. vi编辑器中,INSERT模式下Backspace按键无法删除字符的问题
要解决上述问题,需要进行以下设置:
a)点击“属性”按钮,如下:

打开“属性窗口”。
b)选择“属性”窗口左侧的“终端”标签,将“终端”标签对应的“终端类型”设置为“linux”,如下:

c)选择“属性”窗口左侧的“键盘”标签,将“键盘”标签对应的“功能键类型”设置为“linux”,“DELETE键序列”设置为“VT220 Del (Esc[3~])”,“BACKSPACE键序列”设置为“ASCII 127 (Ctrl+?)(I)”,如下图:

d)某些情况下,由于vim和系统自带的vi的兼容性以及一些默认设置问题,需要修改vim的配置文件“.vimrc”(此文件位于用户根目录下),在该文件中添加不兼容性设置,以及BACKSPACE的一些设置,如下:


完成上述设置后,即可实现在vi的INSERT模式下Backspace的删除字符功能。
2. vi编辑器中,中文乱码的问题
在vi编辑器中出现中文乱码时,我们可以从下面三个方面进行问题排查:
- Xshell的编码格式;
- Linux操作系统的默认语言(编码);
- 出现乱码的文件的编码。
通常情况下,保持这三者编码格式一致,即可解决乱码的问题。
下面举例说明具体的问题排查方法。下面的“test.cpp”中的中文出现乱码,如下:

1)我们首先查看Xshell的编码格式,点击Xshell界面的“属性”按钮,打开属性窗口,查看编码格式,如下:

从上图中,能够看到Xshell的编码格式为“UTF-8”。
2)使用locale命令,查看Linux操作系统的默认语言,如下:

从上图中,能够看到当前Linux操作系统的默认语言为“en_US.UTF-8”。
3)使用file命令,查看中文乱码文件的编码格式,如下:

在上图中,可以看到“test.cpp”文件的编码格式为“ISO-8859”,与Xshell、Linux系统的编码格式不一致,所以需要修改其编码格式。可以使用iconv命令,将“test.cpp”文件的编码格式修改为“UTF-8”,如下:
iconv -f GBK -t utf-8 -o test.cpp test.cpp
修改后,再次查看“test.cpp”文件的编码格式,如下:

此时,“test.cpp”文件的编码格式已经变为UTF-8了。打开该文件,可以看到中文能够正常显示了,如下:

3. 终端连接断开后,服务器程序自动退出
Xshell连接到服务器后,如果我们直接在Xshell窗口里运行程序,那么一旦因为网络故障之类的原因导致Xshell断开连接的话,这个程序就会中止运行(即退出),可以借助nohup命令来避免这个问题。
nohup命令的相关信息,介绍如下:
nohup - run a command immune to hangups, with output to a non-tty
通过nohup命令,可以使程序免除Xshell断开时hangup机制的影响,保证连接断开时程序正常运行。
nohup命令格式如下:
nohup COMMAND [ARG]...
例如,现有如下命令:
./h264_rtsp_server livestream_afp_3001000621-03-10.53.11.767.h264
默认情况下,该命令运行后,会随着Xshell断开而终止运行。借助nohup命令后,该命令变为:
nohup ./h264_rtsp_server livestream_afp_3001000621-03-10.53.11.767.h264
此时,即使断开Xshell(或者关闭当前终端)也不会终止h264_rtsp_server程序。
新一代开源开发者平台 GitCode,通过集成代码托管服务、代码仓库以及可信赖的开源组件库,让开发者可以在云端进行代码托管和开发。旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。
更多推荐


所有评论(0)