centos 转义字符(centos如何切换中文输入法)
大家好,今天小编来为大家解答centos 转义字符这个问题,centos如何切换中文输入法很多人还不知道,现在让我们一起来看看吧!
在centos中怎么安装telnet
一.查看本机是否有安装telnet(centOS5默认有安装telnet)#rpm-qa|greptelnet如果显示结果为:telnet-0.17-39.el5telnet-server-0.17-39.el5那恭喜你,机器上已经安装了telnet。如果没有安装,请看下一步。特别说明:telnet分为telnet-client(简称为telnet)和telnet-server。telnet-client系统(CentOs5.5)一般默认已经安装。telnet-server需要单独安装。二、安装telnet第一种方法(在线安装):可使用命令:#yuminstallxinetd(注意在root下安装)#yuminstalltelnet-server(注意在root下安装)第二种方法(光盘安装法):cd/光盘/CentOSrpm-ivhxinetd-2.3.14-10.el5.i386.rpmrpm-ivhtelnet-server-0.17-39.el5.i386.rpm特别说明:1、telnet服务要依靠xinetd服务启动,所以要先安装xinetd服务。所以我们要先安装xinetd,再安装telnet-server。CentOS5.5默认没有安装telnet和xinetd服务。2、CentOS-5.5-i386-bin-DVD里面有xinetd和telnet-server和安装包!!不需要上网下载!!三.配置telnet方法一:使用ntsysv,在出现的窗口之中,将telnet勾选起来,然后按下OK即可!方法二:使用chkconfig命令直接开启#chkconfigtelneton方法三:直接修改配置文件vi/etc/xinetd.d/telnet一般是这样子的:#default:yes#description:Thetelnetserverservestelnetsessions;ituses\#unencryptedusername/passwordpairsforauthentication.servicetelnet{flags=REUSEsocket_type=streamwait=nouser=rootserver=/usr/sbin/in.telnetdlog_on_failure+=USERIDdisable=yes}只需要将”disable=yes”改成”disable=no”四、激活服务telnet是挂在xinetd底下的,所以自然只要重新激活xinetd就能够将xinetd里头的设定重新读进来,所以刚刚设定的telnet自然也就可以被激活。#servicexinetdrestart或者#/etc/rc.d/init.d/xinetdrestart五.iptables防火墙会阻止telnet,所以需要在iptables允许,用如下命令当你启动telnet服务后,你可以用netstat–tunlp命令来查看telnet服务所使用的端口,可以发现有23。使用下面命令开启这些端口:iptables-IINPUT-ptcp--dport23-jACCEPTiptables-IINPUT-pudp--dport23-jACCEPTserviceiptablessave//保存serviceiptablesrestart//重启防火墙或者来点狠的!!关闭防火墙!serviceiptablesstop六、可能的问题:下面我们来看一下二种错误:第一种:[root@linuxchao~]#telnet192.168.1.87Trying192.168.1.87telnet:connecttoaddress192.168.1.87:Noroutetohosttelnet:Unabletoconnecttoremotehost:Noroutetohost解决方法:这种问题防火墙没有允许telnet服务,连接被阻止,默认CentOS只允许SSH,所以进入其自定义选项,在telnet前打个勾!第二种[root@testxinetd.d]#telnet172.25.1.3Trying172.25.1.3Connectedto172.25.1.3(172.25.1.3).Escapecharacteris'^]'.getnameinfo:localhost:SuccessTemporaryfailureinnameresolution:IllegalseekConnectionclosedbyforeignhost.这一个就是/etc/hosts文件配置问题解决方法:我在里面加两个IP地址,内容如下:[linux@localhost~]$more/etc/hosts#Donotremovethefollowingline,orvariousprograms#thatrequirenetworkfunctionalitywillfail.127.0.0.1localhost.localdomainlocalhost::1localhost6.localdomain6localhost6192.168.1.88192.168.1.86说明:因为客户机的名字不好记就没写进去,内容格式应为127.0.0.1pcname
linux查看版本 cat /etc/issue
CentOS是怎么显示的你查一下照着改就行了。
/etc/issue这个文件是干什么的,输入man issue就能看到。而至于\加一个字母,分别表示什么意思,man agetty就能查到详细的说明,如我的图。而如果你只想知道常见的一些反斜杠+字母的组合表示什么意思,看我的另一张图,备注下这张图来自《鸟哥Linux私房菜》。
Linux echo的输出
这是一个非常有意思的问题,但要解释这个问题确比较困难,我来换一个简单一点的例子,通俗的解释一下。
比如我们有一个shell脚本名为test.sh有一下两行
echo`echo\$HOSTNAME`//反引号
echo$(echo\$HOSTNAME)//$()
我们可以使用sh-x test.sh来分析bash是如何来解释这个脚本的,返回的信息如下:
通过上图我们可以得出两个结论:
反引号中\$并没有将$的特殊意义转换反引号包含的内容 echo \$hostname仍然被解释为一个echo$HOSTNAME取到了这个变量的值并输出所以反引号返回的值为 CentOS-1
$()则正好相反,$明显被\转义成了一个普通字符,所以并没有取到变量值,而是返回了字符串本身的意思,故而返回了$HOSTNAME
这说明反引号对反斜杠(\)有特殊的转化,至少我们看到当我们直接用1个\时,它本身并不会起到转义的作用。现在我们将脚本的内容做一些修改:
echo`echo\\$HOSTNAME`//反引号
echo$(echo\\$hostname)//$()
我们又多加了1个反斜杠,这次我们来看输出的情况:
这次看起来似乎反转了:
反引号反而输出了$HOSTNAME的字面意思
$()如我们所愿的取到了变量值,并理所应当的输出了一个被转义的字符串\
我们再来做一个实验,再建立一个脚本名为a.sh:
echo`echo\\\\`
echo$(echo\\\\)
注意:最后一个反引号和)的前面都有一个空格,否则最后一个反引号和)都将被注释,不会被当做结束的替换符号。
使用sh-x a.sh的结果如下:
通过上图我们可以看到:
反引号中4个\被输出为1个\
$()中4个\被输出为2个\
我们将脚本修改为8个\:
echo`echo\\\\\\\\`
echo$(echo\\\\\\\\)
再看输出:
由此,我们可以得出结论:
反引号齐本身就对\进行了转义,保留了齐本身意思,如果我们想在反引号中起到\的特殊意义,我们必须使用2个\来进行表示。
所以我们可以简单的想象成反引号中: \\= \
$()中则不需要考虑\的问题,与我们平常使用的一样。\= \
题外话:反引号是老的用法,$()是新的用法,不管是在学习测试中,还是在实际工作中,$()的用法都是被推荐的。