今天来学习一下linux的一些常用命令
一 开关机常用命令
shutdown -h now: 现在关机
shutdown -r now: 现在重启
reboot: 现在重启
二 文件常用命令
1. 增
mkdir file: 创建一个名为file的文件夹
mkdir -p a/b/c: 创建a/b/c文件夹子列
touch a.txt: 创建名为a.txt的文件
2. 删
rm -r -f 文件夹(文件): 删除文件(文件夹)
r:recursion(递归)
3. 改
mv d1 d2: 将d1移动到d2里面,如果d2不存在那么就是将d1文件夹(文件)名字改成d2
cp a b:将a复制一份到b中
cp -r a b:将a及其以下所有的文件复制一份到b中
4. 查
ls -h -a -s -l
-a(all): 显示全部的
-s(size): 显示每一个文件的大小
-h(human-readable): 方便我们阅读
-l(long): 长的方式展示
5. 解压
tar -zxvf a.tar: 解压a.tar的包
三 vim常用命令
vim有三种模式,分别是普通模式,命令模式,插入模式
普通模式: 一开始进入就是普通模式,给我们来阅读的
命令模式: shift+冒号(:)进入命令模式
插入模式: i(insert)进入插入模式
命令模式下常用命令:
- set nu(number): 显示行数
- set nonu: 不显示行数
- w: 存盘
- q: 退出
- q!: 不存盘退出
- wq: 存盘退出
- x: 存盘退出
- o: 向下插入一行,并且进入插入模式
- O: 向上插入一行,并且进入插入模式
- /key: 搜索key(类似于windows里面编辑器的ctrl+f)
四
cat a.txt: 在终端显示a.txt里面的内容
tac a.txt: 相比较cat,tac是反序
head -3 a.txt: 在终端显示a.txt前3行的内容(想显示几行只需修改-后面的数字即可)
tail -3 a.txt: 在终端显示a.txt尾3行的内容(想显示几行只需修改-后面的数字即可)
find diction/bin -name text: 在diction/bin目录下查找一个名字为text的文件
grep abc a.txt: 在a.txt中查询是否有abc这三个字符
grep -n abc a.txt: 在a.txt中查找是否有abc这三个字符,如果有显示在第几行
wc -l a.txt: 统计a.txt中有多少行
管道命令: a | b(命令b操作的对象是a)
cat a.txt | grep -n hello: 在a.txt中查找是否有hello这个字符
重定向命令:
cat a.txt > b.txt: 将a.txt中的东西追加到b.txt里面去(从头开始,如果b.txt里面有东西的话就会覆盖掉)
cat a.txt >> b.txt: 将a.txt中的东西追加到b.txt里面去(如果b.txt里面有东西追加在末尾)
whereis a: 查看a命令的路径
who(w): 查看有多少个用户
whoami: 查看当前登录用户是谁
date: 显示时间
stat a.txt: 显示a.txt的一些详细信息
uname: 查看操作系统
hostname: 查看主机名
id: 查看用户信息
dmesg: 查看系统启动信息
du a.txt: 查看a.txt占用多大空间
df: 查看整个系统磁盘使用情况(/dev/sda:是指整个硬盘)
free -h:显示当前内存和交换空间
echo: 类似于java中的System.out.println
ln -s /root/diction/a.txt /root/diction/b.txt: 类似于windows的快捷方式,如果没有-s代表的是硬连接,软连接是宿主没了就没了,而硬连接不会
yum -y install a; 安装a命令
ping url: 来查看是否可以访问一个网站(url代表网站的网址)
telnet ip地址 端口号: 来查看是否能够顾访问该端口
五 linux目录结构
/ : 代表根目录
/root: 超级用户
/home: 普通用户相关文件
/bin: 普通用户可执行命令
/sbin: 超级用户可执行命令
/usr: 默认安装目录
/tmp: 临时文件目录
/lib: 库文件存放目录
/var: 系统经常变化的文件
用户
useradd admin: 新增一个用户名为admin的账号
useradd -r admin: 新增一个用户名为admin的账号(但是不会在/home下生成对应的文件)
useradd -g g1 admin: 新增一个名为admin的账号,该账号属于g1组
userdel admin: 删除用户名为admin的账号
userdel -rf admin: 删除一个用户名为admin的账号(同时把/home下面的文件夹也删除)
组
groupadd g1: 新增一个组名为g1的组
groupdel g1: 删除组名为g1的组
usermod -g g2 admin: 将admin账号更改到g2组
密码
passwd admin: 给admin账户设置密码
su - admin: 从当前账户切换到admin账户
六 在linux下安装java开发环境
1. 下载对应的linux版本的jdk
2. 配置JDK环境变量
2.1 vim /etc/profile
2.2 添加如下配置
export JAVA_HOME=/usr/local/software/jdk1.8.0_201
export PATH=$PATH:$JAVA_HOME/bin
JAVA_HOME是自己电脑linux中jdk所在路径
2.3 使配置生效 source /etc/profile
七 在linux下安装mysql
1. 下载对应的linux版本的mysql包
2. 简化
解压mysql包: tar -zxvf /usr/local/mysql-8.0.32-el7-x86_64.tar.gz
为了方便,重命名一下: mv mysql-8.0.32-el7-x86_64 mysql
创建存储数据文件: mkdir mysql/data
创建用户组:groupadd mysql
创建用户: useradd mysql
更改用户和组为mysql
chown -R mysql:mysql /usr/local/mysql
更改权限
chmod -R 755 /usr/local/mysql
3. 配置
3.1 vim /etc/my.cnf
3.2 添加如下配置
[client]
port = 3306
socket = /usr/local/mysql/data/mysql.sock
default-character-set = utf8mb4
[mysql]
default-character-set = utf8mb4
[mysqld]
port = 3306
user = mysql
socket = /usr/local/mysql/data/mysql.sock
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
4 初始化mysql
进入mysqld的bin目录: cd /usr/local/mysql/bin
初始化: ./mysqld --initialize --user=mysql
5. 启动mysql
前台启动 ./mysqld_safe
后台启动 ./mysqld_safe &
6 将mysql的路径加入到环境变量
vim /etc/profile
添加如下内容
export PATH=$PATH:/usr/local/mysql/bin(这里跟着的是自己电脑Linux里面mysql的bin目录)
使配置文件生效: source /etc/profile
注意
1. 将mysql加入环境变量是为了以后能够在linux里面任何一个地方进入mysql
2. 进入mysql之后执行以下命令修改密码:
alter user 'root'@'localhost' identified by '123456';
flush privileges;
3. 远程访问linux里面的mysql
进入mysql里面,进入mysql数据库(use mysql;)(这里的mysql是数据库名,代表这是一个数据库,里面存储了许多东西)执行一下命令:
update user set host='%' where user='root';
flush privileges;
4. 关于linux防火墙的命令
关闭防火墙: systemctl stop firewalld;
查看防火墙状态: systemctl status firewalld:
5. 关于进程和网络监测命令
查看进程:
ps -aux
ps -ef
top: 网络监测(q可以退出)
netstat -anp | grep 3306: 查看3306端口是否工作
kill -9 进程号: 可以杀死某一个进程