目录
一、Linux 基础命令
1.查看命令
- ls 是list缩写
- 作用:
- 查看指定目录下的 目录信息(文件夹名 文件名)
- 如果没有指定路径 默认就是查看当前路径下的目录信息
- 命令选项
- ls -a
- 查看隐藏文件 或 隐藏文件夹
- 隐藏文件
- 以 . 为开头的文件就是隐藏文件
- 隐藏的目录
- 以 . 为开头的目录就是隐藏目录
- . : 存储当前路径信息
- .. : 存储的就是上一级路径信息
- ls -l
- 以列表的形式 详细的显示 文件和文件夹的相关信息
- 默认文件大小是以字节为单位的
- ls -lh
- 智能显示文件的大小
- 以 kb mb Gb作为单位
2.cd命令
- 作用: 可以进行目录切换
- 特殊的目录
- cd / : 切换到根目录
- cd ~ :
- 如果是普通用户 ==> /home/用户文件夹
- 如果是root用户 ==> /root
- cd - : 切换到上一次所在的路径位置
- cd ../ :切换到上一级目录
- pwd
- 显示当前所在的目录信息
- tab键 : 补全
- 建议: 尽量都是用tab来完成路径的书写
- 如果没有显示 就使用两次tab键 给到提示信息
3.创建文件和文件夹
- 创建文件
- touch 路径+文件名
- 如果不加路径 就是在当前路径下创建文件
- touch的小的扩展
- touch a.txt : 可以在不修改a.txt任何内容的前提下 修改a.txt这个文件的创建时间
- 创建文件夹
- mkdir 路径+文件夹名
- mkdir aaa/bbb/ccc -p 就可以创建这样的文件夹了
4.rm删除命令
- 作用: 可以进行目录切换
- 特殊的目录
- cd / : 切换到根目录
- cd ~ :
- 如果是普通用户 ==> /home/用户文件夹
- 如果是root用户 ==> /root
- cd - : 切换到上一次所在的路径位置
- cd ../ :切换到上一级目录
- pwd
- 显示当前所在的目录信息
- tab键 : 补全
- 建议: 尽量都是用tab来完成路径的书写
- 如果没有显示 就使用两次tab键 给到提示信息
5.mv命令 移动和重命名
用法: mv 路径/要移动的文件名 目标路径/目标文件名
- 移动
- mv ./a.txt ./aaa/a.txt
- 重命名
- mv ./a.txt ./aaa.txt
6.cp复制命令
用法: cp 路径/要复制的文件名 目标路径/目标文件名
- 复制
- 复制的同时修改名字
- cp ./aaa.txt ../aaa/bbb.txt
- 只是简单的复制
- cp ./aaa.txt ../aaa/aaa.txt
7.文件查看命令
- 重定向
- ls /etc > a.txt : 把数据放入到文件a.txt中
- cat
- 用法: 查看小文件(内容不多的文件)
- cat 文件名 -n : 显示行号
- more
- 用法 : 用来查看文章
- 空格: 翻屏
- 回车: 一行一行的查看
- b : 返回
- q: 退出查看模式
8.ps和kill命令
- 类似与win中任务管理器
- ps : 查看进程的命令
- ps -aux : 查看所有的前后台的程序
- pid : 进程编号
- kill -9 : 强制结束进程
- kill -9 进程编号
9.系统命令
- linux查看ip地址的命令
- ifconfig
- win查看ip地址命令
- ipconfig
- ip地址的版本
- ipv4
- ipv6
- 清屏
- clear
- ctrl + l
- 关机命令
- reboot 重启
- shutdown -h now : 立刻关机(断电关机)
- halt : 立刻关机 (不断电关机)
- 查找命令所在路径
- which 命令
- 查看主机名
- hostname
10.grep和管道应用
grep文件内容检索命令
- 作用: 检索文件内容
- 用法
- grep 要检索的内容 文件名 -n
- -n : 显示行号
管道
- 作用: 临时存储数据的作用
- ps -aux |
- 把ps -aux中数据都放到了 管道|中
- ps -aux | grep mysql
- 从管道中查找 跟mysql相关的数据
二、Linux Shell命令
1.重定向
用于追加 或 覆盖 内容到文件中
> 覆盖写入 echo 'hello' > 1.txt
>> 追加写入 echo 'hello' >> 1.txt
2.vim编辑器
底线模式
:q 退出不保存
:q! 强制退出
:wq 保存退出
:set nu: 设置行号
:set nonu: 取消行号
:nohl 取消高亮
: 行号 跳转到指定某行
命令模式
gg: 回到行首
G: 回到行尾
dd: 删除1行
ndd: 向下删除n行
yy: 向下复制1行
nyy: 向下复制n行
p: 粘贴
/内容: 查看内容(高亮)
输入模式
i: 在当前行插入
o: 向下插入一行
O: 向上插入一行

3.用户和用户组
用户
添加用户
useradd [-g 组名] 用户名
# 如果不指定组, 默认会创建1个和账号名一样的组, 然后把该账号存入组内
设置用户密码
passwd 用户名
# 如果密码过于简单, 会有提示, 忽略即可.
查看所有用户
getent passwd
删除用户
userdel [-r] 用户名
# -r意思是: 除了会删除用户, 还会把 /home目录下 该用户的文件夹也一并删除掉.
修改文件/文件夹的属主(用户)
chown [-R] [用户名][:][用户组] 文件或者目录路径
chown -R itheima:itcast aa
# 设置aa及其子级, 属主(用户)是itheima, 属组(用户组)是 itcast
查看用户信息, 所属组等.
id 用户名
添加用户到指定的用户组
usermod -aG 用户组 用户名
用户组
添加用户组
groupadd [-g 组的编号] 组名
# 如果不写-n, 则默认是最大的组编号 + 1
查看用户组
getent group
删除用户组
groupdel 组名
修改文件,/文件夹的属组
chgrp [-R] 组名 文件或者目录路径
-R是递归, 即所有子集全改
4.借调权限
借调权限
su
切换账号
su 用户名
sudo
借调权限
sudo ls /root
配置用户可以借调的权限
vim /etc/sudoers
# 参考第100行的设置
设置权限
举例
chmod +x 1.txt
chmod u+x,g-w 1.txt
chmod 777 1.txt
5.主机,链接相关
开启或关闭某些服务
systemctl start / stop / status / enable / disable / restart 服务名
创建软连接或者硬链接
ln
软链接
相当于设置快捷方式
ln [-s] 要链接的文件或者目录 快捷方式
硬链接
相当于备份且硬链接的文件, 内容会实时同步.
ln 1.txt 3.txt
时间相关
获取当前时间
date
指定时间格式
date +'%Y/%m/%d %H:%M:%S'
指定偏移量
date -d '1 days' +'%Y/%m/%d' # 往后推1天
校验时间
ntpdate -u ntp.aliyun.com
主机相关
主机名
hostname
vim /etc/hostname # 修改主机名, 重启虚拟机有效
hostnamectl set-hostname 主机名 # 立即生效.
域名映射
通过字符串来查找对应的Ip地址
1.配置域名解析. # Linux系统 vim /etc/hosts
2.最后加入如下的内容, 保存退出即可.
192.168.88.161 node1 node1.Alfie.cn
192.168.88.162 node2 node2.Alfie.cn
192.168.88.163 node3 node3.Alfie.cn
3. 测试是否设置成功 ping node1
进程管理
ps -ef # 查看本机所有的进程.
kill -9 pid # 根据pid强制杀死进程及其子进程
6.上传和下载
上传 rz
rz -> 在弹出的框中选择要上传的文件 -> 选择上传即可
下载 sz
sz -> 在弹出的框中选择要保存的路径 -> 选择保存即可
7.压缩和解压缩
方式1: gzip协议
压缩
tar -zcvf 压缩包名.tar.gz 要被压缩的文件或者目录
解压(重点掌握)
tar -zxvf 压缩包名.tar.gz [-C] 解压后的目录
方式2: zip协议
压缩
zip [-r] 压缩包名.zip 要被压缩的文件或者目录
解压
unzip 压缩包名.zip [-d] 解压后的目录
总结
本文简单介绍了Linux的基础和Shell相关命令的使用,而Linux命令是我们开发人员必备的基础技能,这对我们编程基础及其重要。
本文详细介绍了Linux的一些基本命令,包括查看目录的ls命令,切换目录的cd,创建文件和文件夹的mkdir,删除操作的rm,移动和重命名文件的mv,复制文件的cp,以及文件查看、进程管理和系统命令如ps和kill。此外,还涉及了Shell命令中的重定向、vim编辑器的使用,用户和用户组管理,权限借调,主机和链接相关操作,以及文件的上传下载和压缩解压缩方法。
6万+

被折叠的 条评论
为什么被折叠?



