linux命令:
linux讲解方法:
一、第一种:分类
(1)文件命令
想cd /进入根目录 ,在目录下可以创建目录用mkdir,有目录在目录下创建文件 touch 文件名如aa,我们编辑aa文件 vim或vi aa ,按i键 进入编辑描述,输入 内容,保存退出 wq; 编辑好了文本,可以复制一份使用cp aa bb ,复制后可以修改文件名 mv ,或移动文件也可以用mv,要移动要有权限,我们通过chmod、chown 、chgrp 修改权限,,,,,,,
(2)系统命令
sh 启动项目服务 、在查看项目的进程 ps -ef|grep 服务名称 、服务起来后,后台日志也可以通过tail -f 查看实时日志、如果 服务启动 可以 查看报错,比如:端口占用,数据库连接失败等,可以用kill -9 进程 、释放出端口、也可以通过top查看动态进程、
二、第二种:按流程讲讲解
(1)搭建环境 流程 rz 上传包、tar包就要解压 tar -xvf 包名、拿到包可以把原来的代码包删除 rm -rf * ,在移动上传新的包到webapp,在到bin目录启动 sh 或./ 服务,可以查看服务状态ps -ef|grep ,,,,,,
三、常用的命令讲解
我常用的命令:有ps -ef|grep 服务名称 查看服务是否启动、tail -f 查看实时日志、chmod 修改文件 权限,比如最高权限777 ;编辑文档vim或vim ,编辑文档查看行号 set nu ,kill -9 杀死进程,cat 日志文件|grep “字符” 查找报错内容,查看ip地址 ifconfig ,切换用户 su 用户名,查看动态进程 top ;查看服务ps -aux ;查询端口是否占用:lsof -i:端口号、pwd 查看当前路径、ping 查看网络状态、du -sh 查看大小、clear 清屏、、、、、
=====================================
拓展:
1、sed 、awd、grep 三剑客了解
2、如何日志找错误日志?
3、如何查看端口占用?并解决端口占用问题?
4、如何设置最高权限?
5、查看服务进程方式有哪些?
==============================================
课堂知识点:
1、su + root ===》切换到root用户 从普通用户切换到root用户需要输入密码
2、su + 普通用户名称 ===》切换到普通用户 从超级用户切换到普通用户不需要输入密码
3、pwd (查看当前所在的位置 以绝对路径显示出来)
4、ifconfig 》查看Linux系统当中的ip地址
5、ping查看网络是否通畅,不会自己停止需要按住ctrl + c 退出
ping + ip地址 如: ping 192.168.187.130
ping + 域名 如: ping www.baidu.com
6、mkdir》创建一个空的目录 mkdir + 目录名称
mkdir aa ==>创建一个aa的空目录
mkdir a b c ==>创建三个空的同级目录
mkdir -p aaa/bbb/ccc ==>创建三个空的连级目录 如aaa目录下有bbb目录下有ccc目录
7、touch ==》创建一个空的文件 touch + 文件名称 如:touch aa.txt
8、man查看用户手册 man ls ==》查看ls这个命令后面可以接哪些参数 按住大写的ZZ退出
9、ll命令:-s 和 -a 都代表的参数
ll ==>查看当前路径下的所有文件和目录 并且详细的展示
ll -s ==>查看当前路径下的所有文件和目录 不会详细的展示 横向打印
ll -a ==>查看当前路径下的所有文件和目录 并且详细的展示 会展示隐藏文件
ll -lrt ==>查看当前路径下的所有文件和目录 并且他会按照时间的顺序进行排序
10、cd命令:cd命令只能够进入目录不能进入文件
cd ==>进入家目录
cd ~ ==>进入家目录
cd + 目录名称 ===》进入指定的目录 如:cd dcs ==》进入dcs3这个目录
cd … ==>返回上一级目录
cd ./ ==>进入当前路劲的某个目录 如:cd ./aa ==》进入当前目录下的aa目录
cd …/… ==>返回上两级目录
11、vim命令:
首先用vim+文件名进入到编辑模式然后输入一个英文的i(i表示insert 插入数据)从命令模式切换到文件编辑模式
编辑完成之后按住ctrl + c进行保存
按住CapsLock + 大写ZZ退出编辑模式
12、cat + 文件名 cat aa.txt ===>查看aa.txt问价当中所有的内容
13、rm命令:单纯的rm命令不足以删除目录 但是可以删除文件 并且删除会提示你确定要删除吗
rm aa.txt ==》删除文件
rm -r aa ==》删除目录
假如用rm -r 删除连级目录 如果/dcs3/aa/bb/cc则需要一级一级往下确认 优先删除cc y是yes表示同意 n是no 是取消
rm -rf aaa ==》 强制删除aaa这个目录不需要经过同意
rm -rf * 删除当前路径下的所有文件和目录
14、cp命令
cp命令复制文件
cp aa.txt bb.txt ------>复制并且粘贴 并且改文件
cp aa.txt aa/bb.txt ------>把aa.txt文件 复制粘贴到aa目录下面并且该名为bb.txt
cp bb.txt aa ------->相对路径copy
绝对路径:cp aa.txt /dcs3/aa/bb.txt 把aa.txt复制粘贴到根目录下dcs3下aa目录下并且改名为bb.txt
cp aa.txt /dcs3/aa/ ------>绝对路径
cp命令复制目录
绝对路径:cp -r bbb /dcs3/aaa/ccc 把bbb复制粘贴到根目录下dcs3下aaa目录下并且改名为ccc -r为参数
绝对路径:cp -r bb /dcs3/aa/ ------>复制粘贴
相对路径:cp -r cc aa ------>把cc复制粘贴到aa目录下
相对路径:cp -r cc aa/bb ------->把cc复制到aa目录下并且改名为bb
15、mv命令
移动文件
相对路径:
mv aa.txt cc.txt ==》移动aa.txt放置当前路径并且改名为cc.txt 如果放置的不是目录当中都会被重命名
mv cc.txt aaa ==》移动cc.txt这个文件 放置当前目录下的aaa目录下
绝对路径:
mv cc.txt /home/dcs3/Desktop/ ==》移动当前路径下的cc.txt文件 放置根目录下的home目录下的dcs3目录下的Desktop目录下
mv bb.txt /home/dcs3/Desktop/aa.txt ==》移动当前路径下的cc.txt文件 放置根目录下的home目录下的dcs3目录下的Desktop目录下并且改名为aa.txt
mv /home/dcs3/Desktop/aa.txt /dcs3/ ==》移动根目录下的home目录下的dcs3目录下的Desktop目录下的aa.txt文件 放置/根目录下的dcs3目录下
移动目录
mv c a ==》移动c放置当前路径并且改名为a 如果放置的不是目录当中都会被重命名
mv a ./aaa ==》移动c放置当前路径的aaa目录下
mv bb /home/dcs3/Desktop/ ==》移动当前路径下的bb目录 放置根目录下的home目录下的dcs3目录下的Desktop目录下
mv /home/dcs3/Desktop/bb /dcs3/aa ==》移动根目录下的home目录下的dcs3目录下的Desktop目录下的bb这个目录 放置/根目录下的dcs3目录下并且改名为aa
16、yum install lrzsz ===》yum表示在线 install表示安装 lrzsz工具名
17、rz命令:把windows本地的数据导入到Linux服务器
rz apache-tomcat-7.0.56.tar ==》把apache-tomcat-7.0.56.tar包导入到linux服务器
rz head_tail.txt ===》把head_tail.txt导入到Linux服务器
18、sz命令 把Linux服务器当中的数据导入到windows本地
sz + 文件名称 rz和sz命令只能来上传拉取0-500MB
19、查看文件的命令
cat aa.txt ===》查看aa.txt文件当中所有的内容并且展示在控制台
cat aa.txt |grep ‘duoceshi’ ==》这个|叫做管道符 选aa.txt文件当中为duoceshi的关键字
管道符左边的输出等于右边的输入
grep ==》关键字搜索
对于文件和文本的处理在Linux中有grep 、sed 、awk
20、查看文件的三剑客:cat less more
cat命令
cat head_tail.txt ===》查看文件的所有内容 直接打印在控制台
less命令
less head_tail.txt ===》查看文件的内容可以上下左翻页当我内容展示完毕的时候会显示end ctrl+z退出
more命令
more head_tail.txt ===》查看文件的内容以百分比来展示阅读进度 到了百分百就会自动退出
21、cat命令:
>一个重定向
目标文件不存在的情况下
cat aa.txt > zz.txt ===》当目标文件不存在的时候,会新建一个文件并且把源文件的内容复制到新的文件当中
cat aa.txt >> hh.txt ===》当目标文件不存在的时候,会新建一个文件并且把源文件的内容复制到新的文件当中
当目标文件存在的情况下
cat aa.txt > cc.txt ===》当目标文件存在的时候,会把源文件的内容覆盖到目标文件当中
cat aa.txt >> cc.txt ===》当目标文件存在的时候,会把源文件的内容追加到目标文件当中
22、head和tail命令
head head_tail.txt ===》默认查看文件的前十行
tail head_tail.txt ===》默认查看文件的后十行
head -n 5 head_tail.txt ===》查看文件的前五行
tail -n 5 head_tail.txt ===》查看文件的后五行
tail -n +5 head_tail.txt ===》从文件的第五行开始查看到最后
23、find命令:显示绝对路径
find / -name aa ===》从/根目录下查看名字为aa的
find / -name aa.txt ===》从/根目录下查看名字为aa.txt的
find /dcs3 -name ‘aa.*’ ===》查看根目录下的dcs3目录下 名字为aa.开头的 表示所有
find /dcs3 -name ‘aa.t??’ ===》查看根目录下的dcs3目录下 名字为aa.t开头的 ?表示通配的 一个?表示匹配一个字符
find /dcs3/ -type f ===》查看根目录下的dcs3目录下 类型为文件的 type为类型 file为文件
find /dcs3/ -type d ===》查看根目录下的dcs3目录下 类型为目录的 type为类型 directory为目录
find . -type d ===》查看当前路径下类型为目录的 但是这种方法只会显示相对路径
find /dcs3/ -name '.txt’ ===》查看根目录下的dcs3目录下 名字为aa.结尾的 *表示所有
24、权限的三剑客:chmod chown chgrp
chmod : 改变文件和目录的权限
chown : 改变文件或者目录的属主
chgrp : 改变文件或者目录的属组
-rw-r–r–. 1 root root 41 Jun 1 23:28 aa.txt 现在这个aa.txt文件 属主的权限可读可写 属组的权限是可读 其他用户的权限可读
r read 读 权限为4 cat less more head tail
w write 写 权限为2 vim
x execute 执行 权限为1 sh ./ bash
前3位,代表着用户主拥有的权限,
中3位,代表着用户组拥有的权限,
后3位,代表着其他人拥有的权限,
chomd 675 aa.txt ===》把aa.txt文件的属主权限改为可读可写的权限 对属组的权限是可读可写可执行 其他用户有可读可执行的权限
chmod 137 aa ===》把aa这个目录属主的权限改为可执行的权限 对属组有可写可执行的权限 其他用户有可读可写可执行的权限
chown dcs3 aa ===》把aa这个目录的属主改为dcs3
chgrp dcs3 aa ===》把aa这个目录的属组改为dcs3
chown root.root aa ===》把aa这个目录的属组和属主都改为root
chown dcs3.dcs3 aa ===》把aa这个目录的属组和属主都改为dcs3
25、useradd duoceshi ===》添加一个duoceshi的用户
passwd duoceshi ===》给duoceshi这个普通用户创建一个新的密码 要输入两次一次新的密码 第二次确认密码
adduser dcs1 ===》 添加一个dcs1的普通用户
userdel dcs1 ===》删除dcs1这个用户 这种方法删除不干净
userdel -r -f dcs1 ===》强制删除 并且删除干净
[root@192 home]# userdel duoceshi ===》因为duoceshi这个用户在登录状态就删除不了
userdel: user duoceshi is currently logged in
如果报以上错误就说明当前用户在登录状态只能用如下这个命令去删除
userdel -r -f duoceshi ===》强制删除已经登录的用户 删除的时候也会提示用户在登录状态 但是实际上已经删除成功
26、tar命令:
tar包(可以对文件和目录进行打包和解压的操作)
tar -cvf aa.tar aa.txt ===》把aa.txt文件打包成aa.tar包
tar -xvf aa.tar ===》对aa.tar包进行解压
tar -cvf cc.tar cc ===》把cc目录打包成cc.tar包
tar -xvf cc.tar ===》对cc.tar包进行解压
27、tar.gz包(可以对文件和目录进行打包和解压的操作)
tar -zcvf aa.tar aa.txt ===》把aa.txt文件打包成aa.tar.gz包
tar -zxvf aa.tar ===》对aa.tar.gz包进行解压
tar -zcvf cc.tar cc ===》把cc目录打包成cc.tar.gz包
tar -zxvf cc.tar ===》对cc.tar.gz包进行解压
28、zip包(可以对文件和目录进行打包和解压的操作)
zip aa.zip aa.txt ===》把aa.txt文件打包成aa.zip包
unzip aa.zip ===》对aa.zip包进行解压
zip -r cc.zip cc ===》把cc目录打包成cc.zip包 打包目录需要接参数
unzip cc.zip ===》对cc.zip包进行解压
29、gzip包(只能打包文件、不能打包目录)
gzip aa.txt ===》打包文件之后,源文件会消失,只剩下包名
gunzip aa.txt.gz ===》解压之后包名会消失 ,出现源文件
30、scp命令:
scp /dcs3/head_tail.txt root@192.168.187.130:/ ==》把我本地服务器/根目录下的dcs3目录下的head_tail.txt
放到需要连接的远程服务器ip地址root@192.168.187.130的根目录下
scp root@192.168.187.130:/head_tail.txt /dcs3/aa/ ===》通过连接远程服务器root@192.168.187.130然后把远程服务器
/根目录下的head_tail.txt 拷贝到我本地服务器的/根目录下的dcs3目录下的aa目录下
31、df查看磁盘空间大小命令:
df ====》显示磁盘空间大小 以数值的方式展示出来
df -h ====》带单位显示磁盘使用情况
32、top查看cpu的使用情况命令:
top ====》查看cpu的使用情况
top -d 5 ====》5代表5秒钟刷新一次
33、free命令:
free ====》查看内存的使用情况
free -m ====》查看内存的使用情况以兆来显示
34、ps查看进程的命令:
apache-tomcat-7.0.56.tar.gz ==》是一个java应用服务器 ==》后面搭建测试环境就需要用到他
ps ===》查看进程
ps aux ==》查看所有的进程
35、kill杀出进程命令:
kill + 进程id ===》杀除进程
kill -9 +进程id ===》强制杀除进程
36、端口号:在Linux系统当中 一个端口只能被一个应用程序所占用
netstat -ntlp ===》查看所有已经开启的端口
lsof -i +端口号 ===》查看某个端口是否被占用
案列1:如:lsof -i:8080 ==》查看8080这个端口是否被占用
37、who ===》查看在线登录的用户
38、whoami ===》查看当前操作的用户
39、hostname ===》查看当前主机的名称
40、getconf LONG_BIT ===》查看当前的操作系统是32位的还是64位的
41、du -sh aa ===》查看当前aa目录的大小
du -sh aa.txt ===》查看当前aa.txt文件的大小
du -sh 文件名/目录名
42、reboot ===》重启Linux系统
43、shutdown ===》关机 立刻关机
44、init 0 ===》关机
45、service network restart ===》重启网卡
46、alias if=‘ifconfig’ ===》给ifconfig取了个别名为if 功能是一致的 就是换了一个名字
47、unalias if ===》取消if这个别名
48、history ===》查看历史的记录
49、clear ===》清除当前界面的数据 ==》但是上一个界面的数据不会被清空
50、reset ===》重置屏幕 ===》重置所有的命令记录包括之前的
51、nl aa.txt ===》查看aa.txt文件所有的内容 并且以行号的形式展示
52、ln命令:
ln -d 相当于硬链接
硬链接(只能针对文件、不能对目录操作,相当于备份)
ln -d zz.txt dd.txt ==》把zz.txt文件备份为dd.txt
ln -s 软连接
软连接(接绝对路径,可以针对文件和目录创建软连接)
ln -s /dcs3/head_tail.txt /head.txt ===》为head_tail.txt文件创建一个桌面快捷方式放在根目录下改名为head.txt
53、vim + 文件名 ===》vim创建文件如果文件里面没有写内容退出则不会创建空的文件
vim编辑器有三种模式:
命令模式
编辑模式 i进入到编辑模式 ctrl +c保存
末行模式 shift + : 进入末行模式
命令模式 末行模式
- a命令 1.wq命令
从命令模式进入到编辑模式,在光标所在位置后进行输入 保存并退出
2.A命令 2.w命令
从命令模式进入到编辑模式,在光标所在行尾进行输入 保存
3.i 命令 3.wq!
从命令模式进入到编辑模式,在光标所在位置前进行输入 强制保存,退出
4.I命令 4.q!
从命令模式进入到编辑模式,在光标所在行首进行输入 强制退出
5.o命令 5.set nu
从命令模式进入到编辑模式,在光标所在行下一行输入 设置行号/显示行号
6.O命令 6.set nonu
从命令模式进入到编辑模式,在光标所在行上一行输入 取消行号显示
7.x命令 7.m,ny命令
对光标所在的字符进行删除 复制m~n行
8.X命令 8.m,nw +文件名称
对光标所在前的单个字符进行删除 指定m~n行,写入到一个新文件
9.dd命令 9./字符串
删除光标所在行 匹配的字符串高亮显示
10.D命令 10.noh
删除光标所在字符到行尾的内容 取消高亮显示效果
11.yy命令
复制光标所在行的内容
12.3yy命令
复制包含光标所在行的指定行数
13.p命令
在光标所在行的下一行进行粘贴
14.P命令
在光标所在行的上一行进行粘贴