扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
正常tail命令只是一次性显示文件末尾的指定行数,默认为十行,然后自动返回到shell交互命令行模式。但如果用了tail -f 文件名,这样tail命令就会一直跟踪文件末尾内容的变化,并将新增的内容显示在标准输出,即屏幕上。如果要退出这种模式,直接按Ctrl+C键即可。若是在shell脚本中后台方式使用tail -f:tail -f 文件名,则可以通过$!捕捉到该子进程号:PID=$! ,然后在需要终止进程的地方,使用kill $PID,即可终止tail -f xxxx 这个后台子进程。
创新互联成立与2013年,是专业互联网技术服务公司,拥有项目成都做网站、网站设计、外贸营销网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元滨湖做网站,已为上家服务,为滨湖各地企业和个人服务,联系电话:18982081108
使用vi/vim编辑的:
直接先ESC退出编辑状态,再按:冒号,就是进入命令状态;wq是保存退出。
telnet命令是TELNET协议的用户接口,它支持两种模式:命令模式和会话模式。虽然telnet支持许多命令,但大部分情况下,我们只是使用它查看目标主机是否打开了某端口(默认是23)。
其执行结果有两种:
端口未打开
$ telnet 101.199.97.65 62715
1
Trying 101.199.97.65...
telnet: connect to address 101.199.97.65: Connection refused
1
2
此时,命令已退出。
端口已打开
$ telnet 101.199.97.65 62715
1
Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is '^]'.
1
2
3
此时命令未退出。
根据提示Escape character is '^]'.可知退出字符为’^]’(CTRL+])。此时输入其它字符不能使其退出,CTRL+C都不行。输入CTRL+]后会自动执行,进入命令模式:
^]
1
telnet
1
此时再运行quit才会真正退出。
telnet quit
1
Connection closed.
1
其中,Escape character可以自定义,使用参数-e:
$ telnet -e p 101.199.97.65 62715
Telnet escape character is 'p'.
Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is 'p'.
p
telnet quit
Connection closed.
1
2
3
4
5
6
7
8
9
即便如此,退出telnet还是麻烦。那么,更进一步,如果出现在脚本中应该如何(优雅地)退出telnet呢?
方案
其实可以这样:
输出结果后立即退出
$ echo "" | telnet 101.199.97.65 62715
1
Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is '^]'.
Connection closed by foreign host.
1
2
3
4
$ echo "" | telnet 101.199.97.65 62715
1
Trying 101.199.97.65...
telnet: connect to address 101.199.97.65: Connection refused
1
2
输出结果后延迟退出
sleep 2使得telnet输出结果后,停留2秒后退出命令模式。
$ sleep 2 | telnet 101.199.97.65 62715
1
Trying 101.199.97.65...
Connected to 101.199.97.65.
Escape character is '^]'.
Connection closed by foreign host.
使用这种方式可以将标准输出和标准错误重定向到文件中,通过分析文件的内容来判断端口打开状态。
这个太好做了。使用alias[别名]=[指令名称];
意思就是可以自定义一个命令,你想要的效果是这样的
alias bye='exit'
#还有下面这些都是常用的
alias cp='cp -i'
alias l.='ls -d .* --color=tty'
alias ll='ls -l --color=tty'
alias ls='ls --color=tty'
alias mv='mv -i'
alias rm='rm -i'
#更多的基础命令,你可以看看第2章 新手必须掌握的Linux命令。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流