Linux基础命令

ip设置

查看ip
ip addr
ifconfig
编辑配置文件
vim /etc/sysconfig/network-scripts/ifcfg-ens33
service network restart
DNS查看
cat /etc/resolv.conf
网关是否添加
cat /etc/sysconfig/network
连接ip看是否联网
ping 192.168.199.184
ping www.baidu.com
确保DNS可以用
grep hosts /etc/nsswitch.conf
显示当前连接的网
nmcli connection show
将dns配置生效
nmcli con up ens33

linux有几个终端呢?
		linux有7个终端
		通过ctrl + alt + f1-f7 切换终端

linux文件目录结构

pwd 打印当前工作目录

一切以根'/'  目录开始,linux分隔符是斜杠 '/' ,不同于 window的反斜杠 '\'
/home   普通用户家目录   
	/home/zrq
/root    超级用户的家目录
/etc   存放软件的配置文件
	 一般来说,通过yum(pip)自动安装的软件,配置文件一般都在/etc下
     /etc/my.conf   mysql的配置文件
	 /etc/redis.conf   redis的配置文件
	 
/sbin  存放可执行命令 文件
/bin    存放可执行命令 文件
/usr/local/bin   存放可执行命令 文件
/opt   存放额外安装的软件目录
	比如咱们要安装nginx软件,python3软件,正规的存放目录是/opt
	/opt/nginx1-12/
	/opt/python36/
/tmp 存放临时文件,不重要的文件,文件夹
/var  存放系统日志文件居多,比如存放nginx,python,django等等日志

文件颜色

绿色-可执行			黄色-设备
红色-压缩文件 		闪烁红色-链接文件故障
蓝色-目录			白色-文本
浅蓝色-链接文件 	灰色-其他文件

linux文件操作

touch 创建普通文本、修改文本时间戳(伪造时间戳)
stat命令
	查看文件详细信息,包括修改时间
	
mkdir   创建文件夹
	-p参数 递归创建文件夹
[root@localhost tmp]# mkdir -p  /tmp/python/study/future
vi   编辑文本文件,相当于windows下的notepad++

vim	 编辑
使用vim打开文件,默认是命令模式,需要输入a / i 进入编辑模式
按下esc键,回到命令模式
	w write 写入
q quit 退出
! 强制
输入 :wq!  强制保存退出
:x 保存退出
:q  不保存退出
:q! 不保存强制退出

rm cp mv

rm  用于删除文件 或 文件夹
	-r 	递归删除非空文件夹
	-f  强制删除
	-i  需要删除确认
rmdir	删除空目录
	
cp 复制

move  >  mv   移动、重命名
mv  旧文件名字   新文件夹名字
mv	文件	文件夹

echo

echo	str		输出str
ls  查看文件夹内容
	-a	查看隐藏文件夹
	-l	列表显示
	-h	显示文件大小

find

find 在哪里(目录) 什么类型(文件类型) 叫什么名字(文件名)
参数
-name 按照文件名查找文件
-type 查找某一类型的文件,诸如:
b - 块设备文件。
d - 目录。
c - 字符设备文件。
p - 管道文件。
l - 符号链接文件。
f - 普通文件。
s - socket文件
find /tmp/ -type f  -name "study.py"
#找出/tmp所有以 .txt 结尾的文件
find /tmp/ -type f -name "*.txt"
#找到/etc下所有名字以host开头的文件
find /etc -name 'host*'

cat和more

cat 文件  查看文件所有内容
more 文件 一页页看文件,显示百分比
按下空格space是翻页
按下b键是上一页
回车键向下读取内容

head和tail

head显示文件前几行,默认前10行
tail显示文件后几行,默认后10行
#查看前两行
head -2 /tmp/study.txt
#查看后两行
tail -2 /tmp/study.txt
#持续刷新显示
tail -f xx.log

管道

grep [参数] [--color=auto] [字符串] filename
参数详解:
-i : 忽略大小写
-n : 输出行号
-v : 反向选择
--color = auto : 给关键词部分添加颜色

#检查python程序是否启动
ps -ef|grep "python"

du命令用于显示目录或文件的大小。

用法
du 【参数】【文件或目录】
-s 显示总计
-h 以k,M,G为单位显示,可读性强

#什么都不跟,代表显示当前目录所有文件大小
du   
#显示/home的总大小
du -sh /home

top

top 命令用于动态地监视进程活动与系统负载等信息
第一行 (uptime)
系统时间 主机运行时间 用户连接数(who) 系统1,5,15分钟的平均负载
第二行:进程信息
进程总数 正在运行的进程数 睡眠的进程数 停止的进程数 僵尸进程数

第三行:cpu信息
1.5 us:用户空间所占CPU百分比
0.9 sy:内核空间占用CPU百分比
0.0 ni:用户进程空间内改变过优先级的进程占用CPU百分比
97.5 id:空闲CPU百分比
0.2 wa:等待输入输出的CPU时间百分比
0.0 hi:硬件CPU中断占用百分比
0.0 si:软中断占用百分比
0.0 st:虚拟机占用百分比

第四行:内存信息(与第五行的信息类似与free命令)
8053444 total:物理内存总量
7779224 used:已使用的内存总量
274220 free:空闲的内存总量(free+used=total)
359212 buffers:用作内核缓存的内存量

第五行:swap信息
8265724 total:交换分区总量
33840 used:已使用的交换分区总量
8231884 free:空闲交换区总量
4358088 cached Mem:缓冲的交换区总量,内存中的内容被换出到交换区,然后又被换入到内存,但是使用过的交换区没有被覆盖,交换区的这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。

用户

#添加用户
useradd study
#设置密码       
passwd jianchi

su命令可以切换用户身份的需求,
su - username
#先看下当前用户(我是谁)
whoami
#切换用户
su - study
#退出用户登录
logout
ctrl + d

userdel删除用户
-f    强制删除用户
-r    删除用户以及家目录
userdel -r study

sudo

sudo命令用来以其他身份来执行命令,预设的身份为root。在/etc/sudoers中设置了可执行sudo指令的用户。
sudo 【选项】【参数】
-b:在后台执行指令;
-h:显示帮助;
-H:将HOME环境变量设为新身份的HOME环境变量;
-k:结束密码的有效期限,也就是下次再执行sudo时便需要输入密码;。
-l:列出目前用户可执行与无法执行的指令;
-p:改变询问密码的提示符号;
-s:执行指定的shell;
-u<用户>:以指定的用户作为新的身份。若不加上此参数,则预设以root作为新的身份;
-v:延长密码有效期限5分钟;
-V :显示版本信息。

普通用户添加sudo权限
visudo 编辑sudoers文件
写入
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
zrq ALL=(ALL) ALL #允许chaoge在任何地方,执行任何命令

文件权限

r-w-x 读-写-执行 4-2-1
修改权限组
chgrp root study.txt
修改所属用户
chown root study.txt
修改权限
chmod [身份]   [参数]   [文件]
    u(user)   +(添加)  
    g(group)  -(减去)
    o(other)  =(赋值)
    a(all)
减去属主的写权限
chmod u-w study.txt

软连接

ln -s 目标文件 软连接名
在/home目录中建立软连接,指向/tmp/test.txt文件
cd /home
ln -s /tmp/test.txt my_test

ps

ps 命令用于查看系统中的进程状态,格式为“ps [参数]”。
ps  命令常用参数
-a 显示所有进程
-u 用户以及其他详细信息
-x 显示没有控制终端的进程

kill

kill命令用来删除执行中的程序或工作。kill可将指定的信息送至程序。
参数
-a:当处理当前进程时,不限制命令名和进程号的对应关系;
-l <信息编号>:若不加<信息编号>选项,则-l参数会列出全部的信息名称;
-p:指定kill 命令只打印相关进程的进程号,而不发送任何信号;
-s <信息名称或编号>:指定要送出的信息;
-u:指定用户。

先用ps查找进程,然后用kill杀掉:
ps -ef | grep vim
root 3268 2884 0 16:21 pts/1 00:00:00 vim install.log
root 3370 2822 0 16:21 pts/0 00:00:00 grep vim

kill 3268
通常来讲,复杂软件的服务程序会有多个进程协同为用户提供服务,如果逐个去结束这 些进程会比较麻烦,此时可以使用 killall 命令来批量结束某个服务程序带有的全部进程。
例如nginx启动后有2个进程
killall nginx

DNS配置文件

查看Linux的dns,唯一配置文件
配置文件
cat /etc/resolv.conf
#dns服务器地址
nameserver 119.29.29.29
nameserver 223.5.5.5

计划任务

crontab命令被用来提交和管理用户的需要周期性执行的任务,与windows下的计划任务类似
语法
crontab (选项)(参数)
-e:编辑该用户的计时器设置;
-l:列出该用户的计时器设置;
-r:删除该用户的计时器设置;
-u<用户名称>:指定要设定计时器的用户名称。

存放定时任务的文件
/var/spool/cron

所有命令一定要用绝对路径来写!
#每小时的3,15分组执行命令
3,15 * * * * 命令
#在上午8-11点的第3和第15分钟执行
3,15 8-11 * * * 命令
#每晚21:30执行命令
30 21 * * * 命令
#没周六、日的1:30执行命令
30 1 * * 6,0 命令
#每周一到周五的凌晨1点,清空/tmp目录的所有文件
0 1 * * 1-5 /usr/bin/rm -rf /tmp/*
#每晚的21:30重启nginx
30 21 * * * /opt/nginx/sbin/nginx -s reload
#每月的1,10,22日的4:45重启nginx
45 4 1,1,10,22 * * /opt/nginx/sbin/nginx -s reload
#每个星期一的上午8点到11点的第3和15分钟执行命令
3,15 8-11 * * 1 command

本地强制dns解析文件/etc/hosts

指定本地解析:
/etc/hosts
主机IP    主机名    主机别名
127.0.0.1        www.study.cn       
必须掌握的/etc下的linux目录知识
/etc:
这个目录用来存放所有的系统管理所需要的配置文件和子目录。
复制代码
#网卡配置文件
/etc/sysconfig/network-script/ifcfg-eth0
#修改机器名以及网卡,网管等配置
/etc/sysconfig/network
#linux的dns客户端配置文件,实现域名和ip的互相解析
/etc/resolv.conf
#本地dns解析文件,设定ip和域名的对应解析,开发测试最常用的临时域名解析
/etc/hosts/
#系统全局环境变量永久生效的配置文件,如PATH等
/etc/profile
#用户的环境变量
~/.bash_profile 
~/.bashrc
#存放可执行程序的目录,大多是系统管理命令
/usr/sbin
#存放用户自编译安装软件的目录  > 等同于C:\Program files (windows)
/usr/local
#关于处理器的信息,还可以top指令查看
/proc/cpuinfo
#查看内存信息,还可以free -m
/proc/meminfo  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值