什么是Linux:
Linux是一个操作系统,和windows系统并列的关系,Linux实际上是一个操作系统内核,完整的操作系统=操作系统内核+配套的应用程序。有些公司基于Linux内核,提供了不同的配套程序,这就是发行版,如Ubuntu。
如何通过Xshell进行连接:
在右上角新建会话,主机这里改成公网ip,点击链接进行连接。
关于xshell的复制粘贴 ,我设置了直接选中自动复制,鼠标中间点击滚轮张贴。
关于Linux的各种操作:
ctrl相关
ctrl+ z输入很长发现输入错了,直接重新打开一个会话
ls:list
类似于windows的一个打开展示所有文件夹,目录和文件。列出有哪些内容。
ls 指定路径下包含的文件和目录。如ls /就是看/下有哪些文件夹
ls --help是帮助手册
ls / 是查看/(类似于windows的此电脑)这个目录下的情况,Linux所有的目录都是下面。但是 会发现很不直观。
ls -l / 或者 ll /就是列出想要的文件
这里就会发现我们能够直观的看到文件之间的关系了,按照列表的方式,最常用的功能。
权限字符串的第一个字符表示了文件的类型
- -表示普通文件,普通文件的颜色是白色的。
- d表示目录文件(文件夹)。
- l链接文件,快捷方式。
表示拥有者。
文件的大小和修改时间。
pwd查看当前路径
Linux的根目录是以/开始的,window的根目录以盘符开头(D盘什么的),
cd:change directory(切换目录)
cd进入当前文件,cd..返回上一级目录,cd~返回用户目录,cd+ 某个相对路径/绝对路径,直接进入某个路径 .(使用cd需要加上路径,可以使用Tab键补全)。
这个前面的/表示当前目录,说明当前在/这个目录下
表示原本的/root目录,用户主目录。
cd..表示回到上一层 ,
cd可以输入绝对路径。
cd ~回到主目录
pwd:
找到绝对路径。
Linux上绝对路径是以斜杆开头,相对路径以..或者.开头的,
touch:创建出一个新的文件
通过touch +文件名创建文件
cat(查看文件内容,打印文件内容到控制台)
查看文件内容。
echo(写入内容)
echo本身是打印一个内容
但是我们通过 echo 'hello' > test.txt这个方式将hello写入文件中。
这里的>的就是重定向,将数据写入文件中。(但是文件中的内容会被清空,然后重写)。
如果我们不想要被清除,就通过>>方式:
但是这里的操纵只能写一些简单的字符串内容。
Vim(文本编辑器)
Vim是Linux上面一个自带的文本编辑器。可以用来配置的修改,或者日志查看。
打开文件
vim+文件名
编辑文件
vim包含很多快捷键,快捷键的划分和其他软件不同。启动之后默认是normal普通模式,此时键盘是快捷键。要想输入文本,必须要进入insert插入模式。点击小写字母i,进入编辑模式。
保存退出
ctrl+s冻结屏幕,ctrl+q解除冻结。按一下esc回到普通模式,在输入:进入命令模式,此时输入的内容就是vim的命令,输入wq保存退出。或者shift+zz。
mkdir(创建目录)
通过mkdir加上目录名,我们就能得到一个目录。
通过mkdir -p 加目录名创建多级目录。
rm(remove删除目录或者文件)
rm+文件名就是删除文件。
rm -r+文件名删除某个文件
rm+rf强制删除,rm一下删除就没了。
最危险的rm -rf/,把整个硬盘都删了。比如rm -rf /test中间加了空格.
假如变量没有定义就会直接跳过,从而删除硬盘。
mv(剪切,粘贴)
mv后面要跟上要移动的源,和要移动的目标,不仅可以移动文件也可以移动目录。可以重命名。
移动到aaa/目录并且重命名
重命名。
mv操作的时间复杂度是o(1).
cp(复制,粘贴)
cp现在跟上复制的源和目标,实际上和mv差不多
复制目录要加上-r cp -r bbb/ eee把bbb/新复制到新的eee中。
man(帮助手册)
如man mkdir
比如这种的,再点击q退出。
grep(字符串匹配查找)
想查找某个文件中是否包含某个关键字
找到的字符会用红色标注,并且通过-n的方式找到第几行。
ps(展示进程)
查看当前Linux有哪些终端进程,比较不全,所以通过ps aux,就可以看到所有的进程。
由于这里进程很多,所以通常会搭配grep使用,想查看哪些进程,如ps aux | grep mysql,竖线叫做管道,把两个命令连起来,把前一个命令的输出作为另一个命令的输入。
netstat(网络信息)
查看某个端口是不是被使用了,查看某个进程使用哪个端口。
输入netstat,但是实际上并不是很全面,所以一般使用netstat -anp全部罗列(更完整的内容)
更关注上边的tcp/udp内容。下边的unix域套接字 ,可以看到3306是数据库绑定的端口号,8080是Tomcat绑定的端口号。