Xshell 是一个强大的安全终端模拟软件,它支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议,l一般用于在Windows界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。
在学习Linux时,XShell虽然是非必需品,我们可以通过centos终端的界面来输入命令完成学习。但XShell可以将我们的Windows系统和你的Linux系统链接起来,方便我们在Windows环境下去操作Linux系统。
对于程序员来说,在正式工作中,可以熟练使用XShell尤其的重要,我们时常需要通过XShell连接自己公司的服务器,可以用它查看具体功能在后台代码中的实现逻辑,但更多时候,我们使用XShell主要为了查看程序运行时打印的日志文件从而去定位程序产生错误的原因。。此时如何使用XShell命令,也就成为我们学习的重点。接下来,我会介绍XShell非常实用的一些命令。
XShell连接服务器有两种方式:
ssh [options] [user@]host [command]
其中,host为想要连接到的OpenSSH服务器(远程系统)的名称,它是唯一的必需参数。host可以是某个本地系统的名称,也可以是因特网上某个系统的FQDN(参见术语表)或者是一个IP地址。命令ssh host登录到远程系统host,使用的用户名与正在本地系统上使用的用户名完全相同。如果希望登录的用户名与正在本地系统上使用的用户名不同,那么就应该包含user@。根据服务器设置的不同,可能还需要提供口令。如果没有提供command参数,ssh就会让你登录到host上去。远程系统显示一个shell提示符,然后就能够在host上运行命令。命令exit将会关闭与host的连接,并返回到本地系统的提示符。
XShell连接之后,刚进去的小伙伴可能觉得两眼一抹黑,接下来该干什么呢?
别害怕,我这里会演示使用一些最基本的命令,帮助小伙伴熟悉XShell命令的使用。首先,我们想知道自己有哪些文件,那么我们可以使用 ll 或 ls -l 命令来查看,ls 也可以用,但是它会将所有文件横向展示不太方便,ls -l 与 ll 的效果相同,明显 ll 更简单。
我们看到文件之后怎么进入想要看的文件呢?在windows这种图形化的系统下我们可以使用双击这种方式打开我们需要打开的文件,在Xshell中我们需要使用的是:cd 文件名。要进入多级目录下的文件,则每级目录名都要写(可用tab键补全)中间加上斜线“/”。
我们进入目录后,怎么知道自己当前所在位置就是想要进入的地方呢?这时pwd 命令的作用就来了,它的主要作用是查看当前所在路径。
有进入同样就有返回,需要返回的时候我们需要使用:cd …/ 这个命令,同样我们也可以在…/之后加上我们需要进入的上级文件目录就可以直接进入了。
接下来就是如何编辑文件和查看文件了,假如现在d目录下存在d.xml文件,我们需要编辑或者查看它。查看的命令是cat d.xml;编辑的命令是vi d.xml,然后按下i,进入修改模式,要不然就只是看,如果我们突然不想修改时,按下ESC 然后在命令行中写下 :q! 然后回车就接触编辑,如果我们是编辑完了需要保存,也需要按下ESC,然后输入 :wq 回车。
总结一下:编辑文件 vi,按下i进行编辑 保存结束编辑 ESC :wq 回车 不保存结束编辑 ESC :q! 回车
这只是XShell命令中的一小部分,需要学习更多的可以用下面我总结的其他命令继续实验,发现更多学习XShell的乐趣~
查看目录
ls --列出当前目录下所有文件名
ls -l --列出当前目录下所有文件的一个长列表
ls -la --列出当前目录下所有文件的一个长列表,包括以句点开头的隐藏文件
ls a* --列出当前目录下以字母a开头的所有文件
ls -l *.doc --列出当前目录下以.doc结尾的所有文件
进入目录
cd ../ 或者 cd / --进入根目录下
cd .. --当前目录的上一级目录
cd ../.. --切换到上两级目录
cd ~ --切换用户目录,如果是root用户,则切换到/root下
cd /home/bin --进入当前目录的/home/bin目录下
查看当前所在的路径:pwd
建立目录
mkdir 001 --在当前目录下建立001目录
mkdir -p /001/002/003 --在当前目录下嵌套建立指定目录(要带上当前目录)
查找 包/文本
find -name *.rpm 在当前目录中查找rpm包
grep aaa /home/bin/file1 --在file1文件中查询包含aaa的所有行
打包/解压
打包文件
tar -cvf file1.zip file1 --将file1打包成file1.zip格式,此处可以打包成任意格式,即后缀可以为任意的,.aaa,.bbb,.zip,.tar 等
解包文件
tar -xvf file1.zip --解压包file1.zip,如果当前目录已经有文件了,覆盖原文件,否则正常显示
文本操作
文本复制:Ctrl+Insert
文本粘贴:Shift+Insert
文件 上传/下载
文件上传:rz 回车
文件下载:sz file1
//提示:如果连接linux虚拟机上,rz命令不起作用,需要安装一个rz和sz的程序:yum install -y lrzsz
文件复制
cp file1 file1.bak --把文件file1复制为新文件file1.bak
cp file1 /home/bin --把file1文件从当前位置复制到/home/bin目录下
cp * /home/bin --把当前文件下所有文件复制一份到/home/bin目录下
文件移动
mv * /home/bin --把当前目录下的所有文件移动到/home/bin目录下
mv file1 /home/bin --把file1文件从当前位置下移动到/home/bin目录下
文件删除
rm file1,file2,... --删除当前目录文件file1,file2等
rm * --删除当前目录下所有非隐藏文件,不删除目录,除非指定了-r(递归参数)
rm -rf /home 删除home目录及它所包含的所有内容
rm -r /home 删除home目录,会让你确认是否删除目录下的文件
rm -i a*
文件重命名/创建
mv file1 file2 --把file1名称改为file2
touch a.html --在当前目录创建一个空的a.html文件
查看文件内容
more file1 --查看file1文件的内容,支持分页显示
less file1 --查看file1文件的内容
cat file1 --显示file1文件的内容
tail -f file1 --查看file1的内容
tail -100 file1 --查看file1的后100行内容
编辑文件
vi file1 --编辑file1文件内容
esc --退出vi模式,跳入命令模式
:w --保存,但不退出vi模式
:w! --强保存,但不退出vi模式
:wq --保存,并退出vi
:wq! --强保存,并退出vi
:q --不保存,退出vi
:q! --不保存,强制退出vi
:e! --放弃所有修改,从上次保存文件开始再编辑
Ctrl+Z --将vi暂停(挂起)
ctrl+c --进入命令模式
man rm --显示rm命令的使用说明
w --显示登录用户的详细信息,类似于who
who --显示登录用户
last --显示最近登录的用户
date --显示当前时期和时间
su --切换root用户
su zy --切换到zy用户
clear --清屏
free --查看系统内存和Swap分区情况
reboot --重启虚拟机
shutdown -r now --停止服务后重启计算机
shutdown -h now --停止服务后关闭计算机
halt -关闭计算机
tips:如果操作中有特殊的符号,比如()等,记得加\转义一下,如你要删除file1_(1).html,要写成 rm file1_\(1\).html