程序员小王的博客:程序员小王的博客
欢迎点赞 收藏 ⭐留言
如有编辑错误联系作者,如果有比较好的文章欢迎分享给我,我会取其精华去其糟粕
java自学的学习路线:Linux命令详细总结目录
- 一、什么是Linux?
- 1、linux简介
- 2、Linux的历史
- 3、Linux系统的应用场景:
- (1)核心应用场景
- (2)为什么不用windows?
- 4、Linux的版本
- (1)内核版本
- (2)发行版本
- 5、Linux的特点
- 6、Linux的发行版
- 7、常见的操作系统
- 二、Linux之Cent OS 7
- 1、centos 引言
- 2、centos 和 readheat区别
- 三、Linux中目录结构
- 四、Linux中常用指令
- (1)基本命令格式
- (2)ls 查看文件目录结构
- (3)操作文件命令[重点]
- 1、pwd 显示当前目录
- 2、cd 切换当前所在目录
- 3、touch 创建空文件
- 4、mkdir 创建文件夹(目录)
- 5、rm 删除文件或目录
- 6、cp 复制文件
- 7、mv 移动文件和文件夹
- 8、rmdir 只能删除为空的目录(文件夹)
- 9、cat 查看文件内容
- 10、more 分页查看文件内容
- 11、less的 分页查看文件内容
- 12.head 展示文件开头10行
- 13.tail展示文件末尾10行
- 14.echo 操作终端输出命令
- (4)网络相关的命令
- 1、ip addr 查看当前计算机的ip地址【centOS7特有】
- 2、ping 测试网络连通性
- (5)较难的命令
- 1、Tar命令(windows winrar)
- 2、systemctl服务命令(相当于控制Controller)
- 3、ps 进程相关命令
- (6)vi命令
- 1、命令模式下的命令
- 2、末行模式下命令
- 8、回退到上一步和前进
- (7)软件相关命令(rpm)
- 1、用户和组相关命令
- 2、切换用户
- (8)权限相关的命令 chmod
Linux是基于Unix的
Linux是一种自由和开放源码的操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、台式计算机
诞生于1991 年10 月5 日。是由芬兰赫尔辛基大学学生(林纳斯 托瓦兹)Linus Torvalds和后来加入的众多爱好者共同开发完成(linux 0.0.1.x86系统)最后
后来发布于芬兰最大的ftp服务器上,用户可以免费下载,所以它的周边的程序越来越多,Linux本身也逐渐发展壮大起来,之后(1994年)Linux在不到三年的时间里成为了一个功能完善,稳定可靠的操作系统.(1994年version1.0 正式版本,功能完善,稳定的版本)
林纳斯 托瓦兹 2周时间写出 git 分布式版本控制工具(接收世界各地发来的代码,对linux系统修改)
核心: 用在服务器操作系统方面 (服务器系统Web应用服务器、数据库服务器、接口服务器)
嵌入式系统路由器、防火墙、手机、PDA、IP 分享器、交换器、家电用品的微电脑控制器等等,DNS、FTP等等;
高性能运算、计算密集型应用Linux有强大的运算能力。
桌面应用系统
移动手持系统
捆绑收费,因为数据库用sqlServer费用高
Linux的版本分为两种: 内核版本 和发行版本 ;
内核版本是指在Linus领导下的内核小组开发维护的系统内核的版本号 ;
发行版本是一些组织和公司根据自己发行版的不同而自定的 ;
特点:免费,多用户,多任务,支持多线程和多CPU的操作系统,丰富的网络功能,可靠的系统安全,良好的可移植性,具有标准兼容性,出色的速度性能
。
redHat(红帽),centos,suse,ubuntu,红旗Linux
Unix(价格昂贵),Dos(简易,windows,不开源),MacOs(苹果计算机的操作系统),linux(廉价,完全开发的系统)
CentOS(Community Enterprise Operating System,中文意思是社区企业操作系统)是Linux发行版之一
,它是来自于Red Hat Enterprise Linux依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以CentOS替代商业版的[Red Hat](https://baike.baidu.com/item/Red Hat) Enterprise Linux使用。两者的不同,在于CentOS完全开源 。
目前的Linux操作系统主要应用于生产环境,主流企业的Linux系统仍旧是RedHat或者CentOS
,他们出自于同样的源代码,但centos完全免费。其独有的yum命令支持在线升级,可以即时更新系统,不像RedHat 那样需要花钱购买支持服务!
/ 根目录
bin 二进制可执行命令文件
sbin (超级管理员有权操作)二进制可执行命令
etc 存放系统配置文件的目录
usr 共享资源目录 (共享资源:1.放在usr下 资源共享 2.设置权限)
root root用户的家目录(pwd:就会直接进入/root 进入系统根下的root目录)
home 普通用户,进入系统中,是在/home/用户名下(根下的home下的用户名)
tmp: 临时文件的存放目录
root管理员的home目录root,其他用户的home目录home目录中
命令名 -选项 参数
javac -d aa.java
ls -l /usr
注意:linux命令严格区分大小写
ls 查看当前目录结构
ls /usr 查看指定目录
ls -l 长格式显示当前目录(显示显示当前目录)
ls -a (a=all 以.开头的都是隐藏文件,可以展示所有隐藏文件)
ls -a -l (长文件和全部文件组合使用)
ls -R 递归(查看子目录及其子目录下的子目录,ctrl+c结束当前程序)
ll 长文件显示当前长目录
ctrl+c:结束当前执行命令
pwd:显示当前目录
clear :清屏
cd / 切换到根目录
cd .. 切换到上级目录
cd . 当前目录
回家(回到root的根目录) cd/,cd~
切换到用户主目录cd -
使用tab键来补全文件路径
touch 文件名 当前目录下新建空文件
touch /usr/文件名 在共享资源目录下创建新文件
mkdir 目录名 当前目录中新建目录
mkdir /usr/目录名 在指定目录下新建目录
mkdir -p aa/bb/cc/dd 按照目录结构创建目录 -p值父级目录不存在时先去创建父级目录
rm 文件 删除文件(删除提示:y删除 n不删除)
rm -f 强制删除(f:force)
rm -r 递归删除(删除当前文件及其里面的子文件、子目录)
rm -rf 强制递归删除,就不会出现很多提示了
rm -rf /* 慎用 直接删除所有文件 相当于删掉整个操作系统
rm -r 递归删除(删除当前文件及其里面的子文件、子目录)
rm -rf 强制递归删除,就不会出现很多提示了
rm *.txt 通配的形式,删除以txt结尾的文件
rm bb.txt cc.txt
cp 文件名 目录名 将文件拷贝到指定目录中
cp -r 目录名 目录名 将目录及其内部所有文件夹和目录拷贝到目录中
mv 已有文件名 不存在的文件名 修改文件名
mv 已有文件名 存在的目录 移动文件
mv 已有的目录 不存在的目录 修改目录名
mv 已有的目录 存在的目录 移动目录
cat 文件名 查看文件 只能展示一个版面(最后一页内容)
more 文件名 分页查看文件内容 enter 进行回车,一次多展示一行
less 文件名 分页查看文件内容,可以上下展示行 pageUp|pageDown可以分页
:q 退出当前less
head 文件名
tail 文件名
head -n 11 aa.txt
-f的作用 监控服务器日志的运行状态
echo 文本 在终端输出命令
echo 文件夹>>文本 将文本输入到文件夹
将文本输入到文件夹
ip addr 查看当前计算机的ip地址
ip a 简化写法 查看当前计算机的ip地址
ifconfig centOS7之前查看ip地址的
ping ip|网络
ping 192.168.0.1 数据包展示 丢失 0%
ping www.baidu.com
tar 归档(压缩)命令
-c 建立一个压缩文件的参数指令
-x 解压
-z 是否使用gzip压缩
-v 压缩日志
-f 压缩后的名字,在f后面直接写压缩名,以.tar结尾
tar -cf whj.tar aa.txt bb.txt cc.txt 压缩命令
tar -xf whj.tar 解压缩
tar -cvf whj.tar aa.txt bb.txt cc.txt 归档命令显示文件
tar -xvf whj.tar 解压缩并且显示解压的名字
【常用】
tar -cvzf whj.tar aa.txt bb.txt cc.txt 归档命令显示文件
tar -xvzf whj.tar 解压缩并且显示解压的名字
systemctl 操作 服务名
操作:
启动: start
重启: restart
停止:stop查看状态 status
服务名:
mysqlId mysql数据库服务名
firewalld linux系统的防火墙服务名
network linux的网络服务名
防火墙服务命令
查看防火墙的状态 systemctl status firewalld
ps 查看前台进程
ps -aux 查看当前系统中所有进程,及其使用的用户
ps -ef 后台进程
vi/vim 用于文件内容编辑
vi 文件名
vi /usr/文件名
vi/vim 文件名进入文件后---》命令模式---》插入模式--->退出
i,a,o ESC
----》末行模式-----》退出模式
: w:保存 q:退出 !:强制退出
:q! 强制退出不保存
i 在光标前插入
I 在光标当前行开始插入
a 在光标后插入
A 在光标当前行末尾插入
o 在光标当前行的下一行插入新行
O 在光标当前行的上一行插入新行
gg 到文本的第一行
G 到文本的最后一行
----------------重点---------------------------
:set nu 显示行号
:set nonu 取消行号
gg 到文本的第一行
G 到文本的最后一行
:n(数字) 到文本的第n行
------------------重点-------------------------
u undo,取消上一步操作
Ctrl + r redo,返回到undo之前
whoami 查看当前用户 只显示用户名
who 查看当前登录终端 用户名+登录终端+登录时间
who -q 统计用户登录个数
who --count 统计用户登录个数
exit :退出当前系统
添加用户: useradd 用户名
设置密码:passwd 用户名 (需要输入两次)
删除用户:userdel 用户名
如果不指定组 系统会以用户名创建组
在创建用户时可以指定他所属的组 -g
添加用户并且设置组 useradd 用户名 -g 指定组名
.添加、删除组账号:groupadd、groupdel
root用户[root@localhost~]#
普通用户 普通用户[用户名@localhost~]#
su root 切换用户,管理员切换其他用户需要密码,其他用户互相切换需要密码
Linux文件有三种
典型的权限,即r读权限、w写权限和x执行权限
。在长格式输出中在文件类型的后面有9列权限位,实际上这是针对不同用户而设定的。r=4,w=2,x=1
- rw- r-- r--
文件- 属主(创建者的)权限 属组的权限 其他的权限
目录是d 文件创建者同组用户的权限 其他人员的权限
r:可以读
w:可以写
x:可以执行
修改文件操作权限
cchmod 权限设置 文件名
权限设置:
增加权限 +
撤销权限 -
设定权限 =
chmod 给谁加+添加的权限 aa.txt
给谁加
属主(作者):u user
属组(和作者一个组的人):g group
其他成员(其他用户): o other
添加权限:
chmod u+x,g+wx,o+wx aa.txt
(给作者自己加可以执行权限,
给同组的用户添加写执行权限,
给其他用户添加写执行权限)
撤销权限
chmod u-rwx,o-rw,o-rx aa.txt
设定权限
chmod u=rwx,o=rw,o=rx aa.txt
数字法表示权限
读 r4 写w2 执行x1
属主 属组 其他
7 7 7
chmod 123 aa.txt
(作者可以执行
同组的人可以写
其他人可以读
)
chmod 664 bb.txt