linux -----------------------------------------------------------
1. Linux的发行版本: Cent Os、Redhat、Ubuntu
2. Linux特点: 1.免费开源
2.支持多用户登录,多线程操作
3.占用内存小,最小4M(应用于嵌入式)
4.遇到漏洞能够及时得到修复
5.常作为服务器使用
3. Linux默认的管理员、根密码 root/123456
(root相当于Windows的Administrator)
4. 根目录/相当于Windows的“我的电脑”,
根目录下面bin、home、etc...相当于Windows的C、D、E、F盘
5. 常用目录:
bin:存放常用命令
etc:存放配置文件
root:存放管理员文件
home:存放普通用户文件
6. Linux常用的终端工具:secureCRT、Xshell、Putty、ssh
7. ssh的默认端口:22
---------网络相关命令---------------------
1. ifconfig 查看网络信息(查看IP)
ipconfig Windows查看IP信息
2. setup 修改网络、防火墙等相关配置
3. ping 192.168.0.221 测试网络是否连通
4. service network restart 重启网络服务
5. service httpd restart + service mysqld start 重启ecshop
6. CentOS 7启动、停止、查看服务(CentOS 6是service httpd start/stop等)
systemctl start/stop/status httpd.service
---------常用基础命令-----------------
1. clear 清屏 (快捷键Ctrl + L ) Windows是cls
2. ↑ ↓方向键 切换历史命令
3. history 查看历史命令
4. ls ls -l ll 查看目录内容
5. pwd 查看用户当前所在路径
6. 绝对路径:以根目录/开始的路径 /home/liu /home /
相对路径:不以根目录开头的路径 home/liu home ./home
7. cd 切换路径
. 代表当前目录
.. 代表上层目录, cd .. 切到上层目录
~ 代表家目录,
8. uname -r 查看系统内核版本号
9. netstat -an 查看端口使用情况(Windows也适用)
10. tab键 补全命令或路径
11. tree 树状结构展示目录内容
12. Ctrl + Z 或 Ctrl + C 终止命令
------------文件管理相关命令-------------
1. touch 创建文件
touch a.log 创建文件a.log
touch b.txt c.mp3 同时创建多个文件
2. mkdir 创建目录
mkdir test/ 创建目录test
mkdir test2/ test3/ 同时创建多个目录
mkdir -p ./test4/test5 递归创建目录(test4原本不存在)
3. rmdir 删除空目录
rmdir test 删除空目录test
rmdir test2 test3 同时删除两个空目录
4. rm 删除文件或目录
rm a.log 删除文件a.log
rm -f b.txt c.mp3 同时删除多个文件
rm -rf test11/ 删除目录test11
rm -rf test4/* 删除test4目录下所有内容
5. cp 拷贝文件或目录
cp aa/a.log cc 拷贝文件到指定目录cc
cp -r cc bb/aa/ 拷贝目录cc到bb/aa/目录下
cp -r aa ee/ff 拷贝目录aa到ee下面,同时改名为ff(ff原本不存在)
6. mv 移动文件或目录(重命名)
mv test.txt aa 把文件移动到aa目录下
mv mm/a.txt bb/t.txt 把mm/a.txt移动到bb目录下,同时重命名为t.txt
mv aa bb 把目录aa移动到bb目录下
mv bb cc/yy 把bb目录移动到cc目录下,同时重命名为yy
mv cc/yy cc/mm 把yy重命名为mm (yy可以是目录,也可以是文件)
7. cat /etc/yp.conf 查看文件内容(适用于内容较少的文件)
cat -n /etc/yp.conf 查看文件内容同时显示行号
8. 查看内容较多的文件
more /etc/termcap 空格翻页,回车翻行,Ctrl + Z 或Ctrl + C 或 q退出
less /etc/termcap 空格翻页,回车、上下键翻行,Ctrl + Z 或 q 退出
head /etc/termcap 查看文件前面几行(默认10行)
head -5 /etc/termcap 查看文件前面5行
tail /etc/termcap 查看文件末尾几行(默认10行)
tail -6 /etc/termcap 查看文件末尾6行
9. tail /etc/termcap > a.txt 重定向导入(若a.txt有内容,则覆盖)
head /etc/termcap >> a.txt 追加导入(若a.txt有内容,则在内容后面追加)
cat a.txt b.txt > c.txt 同时把a.txt,b.txt的内容导入到c.txt
10. | 管道符 ,把左边命令的输出结果当成右边命令的输入条件
cat c.txt | grep hello 在c.txt查找出所有含有“hello”字符串的行
grep hello c.txt 在c.txt中查找出所有含有“hello”字符串的行
grep -n hel c.txt 在c.txt中查找出所有含有“hel”字符串的行并显示行号
netstat -an |grep 443 查找指定端口信息
netstat -an |grep tcp 查找指定端口信息
11. find ./ -name a.txt 在当前目录查找名为a.txt的文件
find ./ -name '*a*' 在当前目录查找名称含有“a”的文件
12. wc -l c.txt 统计文件行号
13. 硬链接、软连接(了解)
ln a.txt a2
为a.txt创建硬链接a2(相当于复制),若修改其一,源文件与硬链接同时修改
ln -s a.txt asoft
为a.txt创建软连接asoft(可以理解为快捷方式)
--------------打包压缩相关命令-------------------------
1. tar打包
tar -czvf ../tt/b2.tar.gz ./*
将当前路径下的所有文件打包到tt目录下,包名为b2.tar.gz
tar -czvf ../tt/b3.tgz test1/
将test1路径下所有文件打包到tt目录下,包名为b3.tgz
2. tar解包
tar -xzvf ./test/a.tar.gz 将文件解压到当前路径下
tar -xzvf ./test/a.tgz -C ../test/ 将文件解压到指定路径下(大写C)
3. 上传与下载
rz 上传文件
sz a.txt 下载文件 (选项-会话-X/Y/Zmodem)
4. zip打包
zip ./act.zip ./Act.exe 将文件打包成zip包
zip -r test2.zip ../test/ 将目录打包成zip包
5. unzip解包
unzip test5.zip 解压到当前目录下
unzip -d ../test/ test5.zip 解压到指定目录下
------------远程操作---------------------------
1. ssh root@192.168.0.162 以root用户远程访问192.168.0.162主机
logout 退出
2. scp -r root@192.168.0.162:/home/d01/ /test/
远程访问主机并获取指定文件或目录,存放在本机test目录下
------------用户权限--------------------------
1. useradd xiaohua 创建用户xiaohua
userdel -r xiaohua 删除用户xiaohua(连同家目录一起删除)(了解)
2. passwd xiaohua 给用户设置密码
3. su - liu 切换用户登录
4. chmod u+rw aaaaa.txt 给用户增加读写文件的权限
chmod u-w,g-x aaaaa.txt 去除用户写入权限,去除用户组执行权限
chmod g+x,o-x aaaaa.txt 用户组增加执行权限,其他用户去除执行权限
chmod a+w aaaaa.txt 所有用户增加写入权限
chmod u=rwx aaaaa.txt
用户具有读写执行权限(等于号比较特殊,只能类似u=rwx这种用法)
chmod a=rwx aaaaa.txt
所有用户具有读写执行权限
chmod g=--- aaaaa.txt
用户组没有读写执行权限(等于号比较特殊,只能类似g=---这种用法)
chmod 520 aaaaa.txt
chmod 000 aaaaa.txt
chmod 777 aaaaa.txt
chmod -R 777 liu 给整个目录赋予读写执行权限 (-R表示递归)
drwxr-x-w- 2 root root 4096 09-10 07:34 test
第1列,d代表目录,rwxr-xr-x每3个分为1组,
第1组rwx是用户权限,属主,u(user),用户具有可读可写可执行权限
第2组r-x是用户组权限,属组,g(group),用户组具有可读可执行权限
第3组-w-是其他用户权限,o(other),表示其他用户具有写入权限
全部用户 a (all)
权限固定顺序rwx,分别表示读取、写入、执行,数字表示分别为4、 2、 1
比如777, 7=4+2+1, 比如520的5=4+1, 比如360的6=4+2
---------扩展命令------------------------------
1. cal 查看日历
2. date 查看时间
3. date -s "2021-09-10 15:18:30" 修改时间
4. df -h 查看磁盘空间
5. free -m 查看可用内存
6. top 动态查看系统资源
7. who 查看哪些用户登录系统 who am i
8. ps -ef 查看系统运行的所有进程
ps -ef|grep ssh 查看指定进程
ps -ef|grep 3110
9. kill pid 杀掉进程 pid表示进程号
kill 3028 删掉进程号为3028的进程
kill -9 3028 强制杀掉进程
10. mount test.iso /mnt/cdrom 把test.iso挂载到/mnt/cdrom下
mount /dev/cdrom /mnt/cdrom 加载光盘资源/dev/cdrom到/mnt/cdrom下
11. umount -v test.iso 通过挂载源卸载
umount -v /mnt/cdrom 通过挂载点卸载
12. rpm -ivh tomcat.rpm 安装软件tomcat.rpm
13. rpm -e tomcat.rpm 卸载软件
14. rpm -qa | grep mysql 查看是否安装指定软件
15. tail -f a.log 动态查看文件内容(常用作持续查看系统日志)
16. chown 修改文件所属用户或用户组
chown root /var/run.log 修改文件所属用户为root
chown :xiaohong a.log 修改文件所属用户组为xiaohong(注意前面冒号)
chown liu:ming file1.txt 修改文件所属用户为liu,用户组为ming
chown -R liu:Tom ./* 修改当前目录所有内容的用户为liu,用户组为Tom
17. lsof -i:8080 查看指定端口占用的进程
结束指定端口:先找到端口对应进程,再杀死进程
------------vi编辑器-------------------
1. 编辑模式
按i进入编辑模式,按ESC退出
2. 末行模式
:wq 保存并退出
:q! 强制退出
:w 保存
:set nu 显示行号
:set nonu 取消行号
:n 跳转到第n行
:w b.txt 另存为b.txt
:3,7s/666/abc/g 把第3到第7行的666改成abc
:1,$s/abc/666/g 把第1行到最后1行的abc改成666
3. 命令模式
yy 复制指定行
p 粘贴到当前行的下一行
dd 删除当前行
x 删除光标所在1个字符
/abc 搜索abc n下翻,N上翻
gg 到首行
G 到末行
^ 到行首
$ 到行尾
ngg 跳转到第n行
ndd 当前行开始往下删除n行
u 撤销
D 删除光标所在位置到行尾内容
nyy 当前行开始往下复制n行