Linux基础及其常用命令

Linux基础

一、目录结构
目录存放内容
/bin存放经常使用命令
/dev存放Linux的外部设备
/home用户的主目录,每一个用户都有一个自己的目录
/lib存放系统最基本的动态连接共享库
/mnt存放用户临时挂载的文件系统
/proc存放当前内核运行状态
/run临时文件系统,存放系统启动以来的信息
/srv存放一些服务启动之后需要提取的数据
/tmp存放临时文件
/var存放经常被修改的文件,如日志文件
/boot存放linux核心文件,包括连接文件以及镜像文件
/etc存放所有的系统管理所需要的配置文件和子目录
/media存放linux识别的的设备
/opt存放安装软件的目录
/root管理员目录
/sbin存放系统管理员使用的系统管理程序
/sys存放内核对象的文件和目录
/usr超级用户使用的管理程序和系统守护程序
二、关机与重启
shutdown 关机
	shutdown -h now 立即关机
	shutdown -h 1 一分钟后关机
	shutdown -r now 立即重启
halt 关机
reboot 重启
sync 数据同步到磁盘,当重启或关机时,应执行一下sync指令,同步数据到磁盘
三、用户登录和注销
su - 用户名 切换用户
logout 注销
四、用户管理
useradd 用户名  添加用户
useradd -d 目录 用户名  添加用户到指定目录下
useradd -g 用户组 用户名  添加用户到指定用户组
userdel 用户名  删除用户
userdel -r 用户名  删除用户和家目录
passwd 用户名  为用户添加密码
id 用户名  查询用户信息
su - 用户名  切换用户,exit指令返回到原来用户
whoami 查询当前用户

注:
/etc/passwd 用户配置文件(用户信息)
/etc/group 用户组文件(用户组信息)
/etc/shadow 口令配置文件(密码和登录信息)
五、运行级别
0 关机
1 单用户(找回丢失密码)
2 多用户无网络服务
3 多用户有网络服务
4 保留
5 图形界面
6 系统重启

init [012356] 指定运行级别

如何找回root密码?
思路:进入单用户模式,然后修改root密码。因为单用户模式不需要密码即可登录。
步骤:开机->在引导时输入回车键->看到一个界面输入e->看到一个新的界面,选中第二行(编辑内核)再输入e->最后输入1,在输入回车键->再次输入b,就会进入单用户模式,使用passwd指令修改root密码。

注:
/etc/inittab 系统运行级别配置文件
六、帮助指令
man [命令或配置文件] 获取帮助信息
help 命令 
七、文件目录
pwd 显示当前目录的绝对路径

ls 显示当前目录的所有文件和目录
ls -a 包含隐藏的文件和目录
ls -l 以列表的形式显示信息

cd 切换目录
cd ~ 切换到家目录
cd .. 切换到上一级目录

mkdir 创建目录
mkdir -p 创建多级目录
rmdir 删除空目录

touch 创建空文件(可以一次性创建多个文件)

cp 当前文件路径 要拷贝的文件路径  拷贝文件
cp -r 拷贝整个目录到指定文件夹
\cp -r 强制覆盖目录

rm 删除文件或目录
rm -r 递归删除整个文件夹
rm -f 强制删除不提示
rm -rf 递归强制删除

mv  移动文件与目录或重命名

cat  查看文件
cat -n  显示行号
cat -n 文件 | more  分页显示文件

more 是一个基于vi编译器的文本过滤器,它以全屏的方式按页显示文本文件内容
more 文件
space 下一页
enter 下一行
q 离开
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一页
= 输出当前行的行号
:f 输出文件名和当前行号

less 用来分屏查看内容,功能比more强大,并不是一次性显示文件,而是根据显示需要加载内容,一般查看大文件
less 文件

> 输出重定向,覆盖原来文件内容
>> 追加到文件的尾部
ls -l >文件  将列表的内容写入文件中
ls -al >>文件  将列表内容追加到文件的末尾
cat 文件1 > 文件2  将文件1的内容覆盖到文件2
echo "内容" >> 文件

echo 输出内容到控制台
echo $PATH 输出环境变量

head 显示文件开头部分
head 文件  默认显示前10行
head -n 5 文件  显示文件的前五行

tail 显示文件尾部内容
tail 文件  默认显示尾部后10行内容
tail -n 5 文件  显示尾部后5行内容
tail -f 文件 实时追踪文件的所有更新

ln 软链接(符号链接),主要存放链接其它文件的路径
ln -s 原文件 软链接名

history 查看已执行过的历史指令,也可以执行历史指令
history 10 显示最近10条指令
!10 执行编号为10的指令 
八、时间日期
date 显示当前时间
date "+%Y-%m-%d" 显示年月日
date "+%Y-%m-%d %H:%M:%S" 显示时分秒
date -s "时间字符串" 设置时间
 
cal 查看日历
cal 2021 查看2021年日历
九、搜索查找
find 将从指定目录向下递归地遍历其各个子目录
find 目录 -name 文件  按照指定的文件名查找模式查找文件
find 目录 -user 用户名  查找属于指定用户名所有文件
find 目录 -size 文件大小  查找属于指定用户名所有文件(+n 大于 -n小于 n等于,单位:M、k)

locate 可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件,所以第一次运行前,必须使用updatedb指令创建locate数据库
locate 文件

grep 过滤查找,管道符“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
grep [选项] 查找内容 原文件
grep -n 显示匹配行及行号
grep -i 忽略字母大小写
grep -ni 忽略大小写并显示行号
cat hello.txt | grep -n yes  查找文件中的yes并显示所在的行号
十、压缩和解压
gzip 文件  压缩文件,将文件压缩为*.gz文件,压缩后,原文件不会保留
gunzip 文件.gz  解压缩文件

zip  压缩文件,在项目打包发布中很有用
zip -r 压缩名.zip 目录  递归压缩,压缩目录
unzip 文件.zip  解压文件
unzip -d 目录 文件.zip  将文件解压到指定目录

tar 打包文件,最后打包文件为.tar.gz文件
tar [选项] xxx.tar.gz 打包文件
tar -zcvf xxx.tar.gz 打包文件(可以多个文件或目录下的所有文件)
tar -zxvf xxx.tar.gz  解压.tar文件
tar -zxvf xxx.tar.gz -C 目录  解压.tar文件到指定目录(该目录不存在则错误)
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解包.tar文件
十一、组管理和权限管理
ls -ahl 查找文件所有者

groupadd 组名  创建用户组
groupdel 组名  删除用户组
usermod -g 用户组 用户名  修改用户组
usermod -d 目录名 用户名  修改用户登录的初始化目录

chmod 可以修改文件或目录权限
第一种方式:+、-、=变更权限
u:所有者 g:所有组 o:其他人 a:所有人
chmod u=rwx,g=rx,o=x 文件目录名
chmod o+w 文件目录名  给其他人增加w权限
chmod a-x 文件目录名  给所有人减去x权限
第二种方式:通过数字变更权限
r=4、w=2、x=1  rwx=4+2+1=7
chmod u=rwx,g=rx,o=x 文件目录名 -> chmod 751 文件目录名

chown 用户名 文件名  改变文件的所有者
chown 用户名:用户组 文件名  改变文件的所有者和所有组
chgrp 组名 文件名  修改文件所在组
—R 如果是目录,则使其下的所有子文件或目录递归生效

rwx权限详解

1、作用到文件

  • [r]代表可读(read):可以读取、查看
  • [w]代表可写(write):可以修改,但是不代表可以删除文件,删除文件前提条件是对该文件所在的目录有写权限
  • [x]代表可执行(execute):可以被执行

2、作用到目录

  • [r]代表可读(read):可以读取,ls查看目录内容
  • [w]代表可写(write):可以修改,目录内创建、删除、重命名目录
  • [x]代表可执行(execute):可以进入该目录

注:

rwx可以用数字来表示:

r=4、w=2、x=1, rwx=4+2+1=7

目录占的大小为4096

十二、定时任务调度
crontab [选项] 进行定时任务的设置
-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有定时任务
service crond restart  重启任务调度

示例:
crontab -e
*/1 * * * * ls -l /etc > /tmp/to.txt

shell脚本
1、编写date.sh文件
2、写入date >> /home/hsb/date.txt
3、给date.sh执行权限,chmod 744 date.sh
4、crontab -e 编写 */1 * * * * /home/hsb/date.sh,保存执行
十三、磁盘分区和挂载
lsblk 查看系统的分区大小
lsblk -f  查看系统的分区和挂载情况

umount 硬盘路径  卸载硬盘

df -h  查看系统整体磁盘使用情况
df -l

du -h 目录  查看目录磁盘使用情况
-s  指定目录占用的大小汇总
-h  带计量单位
-a  含文件
--max-depth=1  子目录深度
-c  列出明细的同时,增加汇总值

统计/home文件夹下文件的个数
ls -l /home | grep "^-" | wc -l
统计/home文件夹下目录的个数
ls -l /home | grep "^d" | wc -l
统计/home文件夹文件的个数,包括子文件夹里的
ls -lR /home | grep "^-" | wc -l
统计文件夹下目录的个数,包括子文件夹里的
ls -lR /home | grep "^d" | wc -l
以树形结构显示
yum install tree
tree
十四、网络配置
修改网络配置文件
vim /etc/sysconfig/network-scripts/ifcfg-eth0

重启服务
service network restart
十五、进程管理
ps -a  显示当前终端的所有进程信息
ps -u  以用户的格式显示进程信息
ps -x  显示后台进程运行参数
ps -aux | grep sshd  过滤进程
ps -ef  查看父进程
-e 显示所有进程
-f 全格式
pstree [选项] 更加直观的来看进行信息
-p 显示进程PID
-u 显示进程的所属用户

kill [选项] 进程号  终止进程
kill -9 进程号  强制终止进程
killall 进程名称  通过进程名称杀死进程,支持通配符

service 服务名 [start|stop|restart|reload|status]
在CentOS7以后不再使用service,而是systemctl

telnet ip地址 端口  检查端口是否可用

ls -l /etc/init.d/  查看服务

chkconfig 可以给每个服务的各个运行级别设置自启动或关闭
chkconfig --list | grep 服务名  查看服务
chkconfig 服务名 --list
chkconfig --level 5 服务名 on/off

top top与ps很相似,都是用来显示正在执行的进程,top在执行一段时间可以更新正在运行的进程
top [选项]
-d 秒数  指定top命令每隔几秒更新,默认是在3秒
-i  使top不显示任何闲置或僵尸进程
-p  通过指定监控进程id来监控某个进程的状态
交互操作说明
P 以CUP使用率排序,默认
M 以内存使用率排序
N 以PID排序
q 退出top
u 监控某个用户
k 结束进程

netstat [选项] 查看网络状态
-an 按一定顺序排序输出
-p  显示那个进程在调用
十六、rpm和yum包
rpm -qa | grep xx  查询已安装的rpm包
rpm -e rpm包  卸载rpm包
rpm -e --nodeps rpm包  强制卸载rpm包
rpm -ivh rpm包全路径名称  安装rpm包
-i 安装
-v 提示
-h 进度条

yum list | grep 软件  查询已安装yum包
yum install 软件  安装软件
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值