本文使用的是云服务器来获取Linux环境 (使用虚拟机同样可以学习使用命令), 并且介绍了常用的Linux 命令.
获取Linux环境
使用xshell连接到云服务器
1.新建会话 输入主机号(云服务器的外网ip)
2.输入用户名/密码
centos的用户名:root
密码就是在后台设置的
3.成功进入
~描述的当前所处的目录位置
它是一个特殊的目录,表示该用户的home目录
Linux命令
尽管Linux命令有很多,但是日常工作中,常用的也就十几个.
一.ls(list)
ls 文件名
列出当前/指定目录中,都有哪些哪些
更多的时候,使用的是ls -l / ll ,可以看得更详细
#详细查看
ls -lll
这些字段分别表示
文件的权限 - 文件的拥有者 - 文件拥有者所在的用户组 - 文件大小(普通文件有意义)
- ls / 查看根目录下的文件
ls /
- 通过颜色区分不同的文件类型
白色:普通文件
深蓝色:目录
亮蓝色:链接文件(快捷方式)
红色:压缩包
二.cd
change directory 切换目录
cd + 切换到目录的名称 (绝对/相对路径)
绝对路径:Linux以 / 开头
相对路径:以. 或者 ..开头
注意: 直接cd , 就会切换到主目录
三.pwd
查看当前位置的绝对路径
四.touch/cat/echo
touch创建文件
cat 读取文件内容
echo 显示内容/写文件
* 显示内容
* 写文件
- ctrl+l 可以清屏
五.vim
用于完成更加细粒度的编辑
1.打开文件
vim+文件名
进入以后
2.退出vim
a.先输入: (进入vim的命令模式)
b.再输入wq+回车 (write保存+quit退出)
注意:
vim为了加快操作效率,引入了很多快捷键,为了能够区分是快捷键还是输入的内容,引入了不同的模式
普通模式:默认情况下,vim处于普通模式,此时按下的快捷键,都是快捷键,不是真正输入.
命令模式:普通模式下输入 : 就相当于开启 命令模式 快捷键
插入模式:普通模式下输入小写字母 i , 此时键盘按键才是真正的编辑
3.编辑文件
普通模式下输入小写字母 i 进入插入 , 此时键盘按键才是真正的编辑
插入模式下要保存文件需要先Esc退回到普通模式,然后wq+回车.
tip:上述三个操作已经足够用了.熟练使用vim可以加快敲代码的速度,很多开发工具比如idea都是支持vim风格的快捷键.
六.mkdir
mkdir + 目录名 创建目录
- 一次创建多个同级目录
mkdir aa bb cc
- 一次创建多级目录 ( 注意后面加上 -p )
mkdir aa/bb/cc -p
七.rm
删除文件/目录
- 删除文件 (centos会提示是否要删除,敲y确定;其他否定)
rm 文件名
- 删除目录 (递归删除:先删除目录里面的内容,再删除外面的)
带有确认
#带确认
rm -r 目录名
- 删除目录 (不带确认) (-f选项,不确定直接删除)
rm -rf 目录名
注意:删除是一个危险操作,Linux删除的内容,无法恢复.
八.man命令
man+命令名字 获取帮助文档cd
敲q退出
九.cp
1.文件复制
cp 文件名 目录路径
将~目录下的java.txt命令复制到cc目录下
复制的同时重命名(当前目录)
2.目录复制
#直接复制目录
cp 目录名 目的目录路径 -a#按递归复制目录
cp 目录名 目的目录路径 -r
将~目录下的ee目录复制到~目录下的cc目录 (要加-r才能递归的复制)
十.mv
move移动
mv 文件名 目的目录/文件名
1.移动文件
mv 文件名 目的路径
将test.txt移动到上级目录
2.移动文件并重命名
mv 文件名 目的路径/重命名名称
将test.txt移动到ee目录下,并且重命名为test2.txt
3.重命名
mv 文件名 重命名后的名字
单纯将test2.txt重命名为test3.txt
总结:
这12个命令是最常用的和文件/目录相关的命令.必须要熟练掌握.
补充:
1.如何linux命令行中如何复制粘贴
ctrl+insert 复制
shift+insert 粘贴
linux命令行中无法用ctrl+c/v进行复制粘贴 .ctrl+ c 在Linux中的含义是终止命令.
2.三个重要的命令
-
grep
- 字符串搜索/匹配
ps
把test3.txt中包含aa的行列出来
-
ps
- 显示进程列表
Linux敲下的所有命令都会转化为一个进程.
1.显示当前会话中的进程
ps
2.显示所有进程
ps aux
注意:
通过上述两个命令,可以达成一些效果
1.根据进程名字查询进程的pid
ps aux | grep 进程名
查看进程名为vim进程的pid
2.根据pid查看进程名
-
netstat
- 显示网络状态
1.根据端口好找到进程名
netstat -anp | grep 端口号
根据端口号8080,筛选出对应的进程
2.根据进程名找到端口号
netstat -anp | grep 进程名
找到mysql的端口号
总结:
ps | 可以根据进程名找到pid | 根据pid找到进程名 |
netstat | 可以根据进程名找到端口号 | 根据端口号找到进程名 |