前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >day102-day104-Linux基本命令

day102-day104-Linux基本命令

原创
作者头像
少年包青菜
修改2023-03-29 16:12:43
1.1K0
修改2023-03-29 16:12:43
举报
文章被收录于专栏:Python 学习

1.xshell 远程连接 Linux 服务器

代码语言:javascript
复制
ssh  用户名@Linux服务器ip

2.linux管理网卡

代码语言:javascript
复制
# 在系统刚装好的时候,默认可能没有启动网卡
        ifup     网卡名字      #启动网卡
        ifdown   网卡名字      #关闭网卡

3.管理网络配置的文件(修改静态 ip)

代码语言:javascript
复制
vi /etc/sysconfig/network-scripts/ + ifcfg-ens33 或者 ifcfg-eth0 或者 ... (每个人不一样)
进入文件之后修改 onboot=yes

4.对网络服务进行 启动 / 停止 / 重启

代码语言:javascript
复制
/etc/init.d/network  start/stop/restart

5.Linux目录结构

<><><><><><><><><><><><><><><><><><><><>分割线<><><><><><><><><><><><><><><><><><><><><><>:

代码语言:javascript
复制
# 存放用户身份信息的文件            /etc/passwd  
# 存放用户组的文件                  /etc/group 
# 存放用户密码的文件                /etc/shadow 
# 存放root权限配置的文件            /etc/sudoers
# 配置一些常量,开机读取,永久生效   /etc/locale.conf 
# DNS配置文件                       /etc/resolv.conf 

1.增

代码语言:javascript
复制
01.mkdir  XXX                      创建一个名为 XXX 的目录
02.mddir -r  AAA/BBB/CCC           创建地柜目录
#  mkdir -p /data/{dir1,dir2}      同时创建多个目录
代码语言:javascript
复制
03.touch  XX.xx                    创建一个名为 XXX.xx 的文件
代码语言:javascript
复制
04.useradd  XXX                    新建一个名为 XXX 的用户
代码语言:javascript
复制
05.wget -r -p  +下载链接           下载资源类似于一个小爬虫
代码语言:javascript
复制
06.ln -s  /xxx/python3.7  /usr/bin/python3.7
# 创建软连接,输入 python 就直接运行 /xxx/python3.7

# 或者不用软连接
# echo ":/XXX/python3.7" 进 PATH ,系统通过 PATH 找到路径同样运行 python3.7
# PATH="xxxxx"
# 或者参考:实际可能有误
# 以添加JDK的环境变量为例子,vim /etc/profile (linux的全局环境变量配置文件)打开文件, 在文件最后添加:
# export JAVA_HOME=/opt/jdk1.8.0_191
# export PATH=$JAVA_HOME/bin:$PATH
代码语言:javascript
复制
# 常规格式--tar
07.tar -cf XXX.tar 文件1 文件2..         将多个文件打包成一个叫 XXX 的 tar 压缩包
08.tar -xf XXX.tar                       将 XXX tar包解压出来
09.tar -xf XXX.tar -C /目录              将 XXX tar包解压到指定目录
10.tar -tf XXX.tar                       不解压查看内容

# 压缩格式--gz
11.tar -zcvf XXX.tar.gz 文件1 文件2..     将多个文件打包成一个叫 XXX 的 gz 压缩包
12.tar -zxvf XXX.tar.gz                   将 XXX 压缩包包解压出来
13.tar -zxvf XXX.tar.gz -C /目录          将 XXX 压缩包解压到指定目录
14.tar -tvf XXX.tar.gz                   不解压查看内容  

# 压缩格式--bz2
15.tar -jcvf XXX.tar.bz2 文件1 文件2..   将多个文件打包成一个叫 XXX 的 bz2 压缩包
16.tar -jxvf XXX.tar.bz2                 将 XXX 压缩包解压出来
17.tar -jxvf XXX.tar.bz2 -C /目录        将 XXX 压缩包解压到指定目录
18.tar -tvf XXX.tar.bz2                  不解压查看内容 
代码语言:javascript
复制
18.crontab -e                      新增/编辑定时任务 
19.crontab -l                      查看定时任务
20.crontab -r                      清除定时任务   
# 实例
     * * * * * command             每1分钟执行一次
     3,15 * * * *                  每小时的第3和第15分钟执行
     3,15 8-11 * * *               在上午8点到11点的第3和第15分钟执行
     3,15 8-11 */2  *  *           每隔两天的上午8点到11点的第3和第15分钟执行
     3,15 8-11 * * 1               每周一上午8点到11点的第3和第15分钟执行
     30 21 * * *                   每晚的21:30执行
     45 4 1,10,22 * *              每月1、10、22日的4 : 45执行
     10 1 * * 6,0                  每周六、周日的1 : 10执行
     0,30 18-23 * * *              每天18 : 00至23 : 00之间每隔30分钟执行
     0 23 * * 6                    每星期六的晚上执行
     * */1 * * *                   每一小时执行
     * 23-7/1 * * *                晚上11点到早上7点之间,每隔一小时执行

2.删

代码语言:javascript
复制
01.rm  XXX                         将 XXX  这个文件删除
02.rm  XXX*                        将 XXX  开头的文件全部删除
03.rm -r  XXX                      将 XXX  文件夹以及里面所包含的文件夹和文件全部删除
04.rm -rf XXX                      将 XXX  直接强制删除,不挂它是什么
代码语言:javascript
复制
05.userdel -rf username            将普通用户的包括家目录全部彻底删除
代码语言:javascript
复制
06.kill 进程号                     根据进程号结束进程
07.kill-9 进程号                   根据进程号强制结束进程
08.killall 进程                    一次性全部结束跟该进程相关的所有相关进程

3.改

代码语言:javascript
复制
01.mv  AAA  BBB                    将 AAA 重新命名为 BB
02.mv  AAA  BBB/CCC                将 AAA 移动到 BBB 下面并且重命名为 CCC
代码语言:javascript
复制
03.cp  AAA  BBB                    将 AAA 复制到 BBB 下面 
04.cp  AAA  BBB/CCC                将 AAA 复制到 BBB 下面并且重命名为 CCC 
05.cp -r  AAA  BBB                 将 AAA 文件夹 复制到 BBB 下面
06.cp -p  AAA  BBB                 将 AAA 文件夹 复制到 BBB 下面,保持 AAA 的一切属性,比如时间属性
代码语言:javascript
复制
07.passwd  用户名                  修改用户的密码  
08.hostnamectl  set-hostname       XXX  将主机名改成 XXX
代码语言:javascript
复制
09.echo AAA > XXX                  将 AAA 重写覆盖进 XXX 里面
代码语言:javascript
复制
10.echo AAA >> XXX                 将 AAA 追加到 XXX 的后面 
代码语言:javascript
复制
11.cat >> XXX << EOF               自由模式编辑,编辑完最后一行写 EOF 结束,追加操作
代码语言:javascript
复制
12.alias XXX="echo 禁止使用该命令"  执行 XXX 命令的时候,将执行 echo '禁止使用该命令',一般用于防止 rm -rf
13.unalias XXX                     将再次可以使用 XXX 命令
# alias rm="echo 禁止使用该命令"    执行 rm 命令的时候,将显示 '禁止使用该命令',注意双引号
# unalias rm                       将再次可以使用 rm 命令
代码语言:javascript
复制
14.scp (-r)  /xxx username@ip:/xxx 将本地文件(夹)传递到目标主机,本地-->目标
14.scp (-r)  username@ip:/xxx /xxx 将目标主机文件(夹)下载到本地,目标-->本地
# scp -r /home/dict leon@192.168.1.66:/home  将本地 home 里的 dict 文件夹传输到目标主机的 home 下
# scp -r leon@192.168.1.66:/home/dict /home  将目标主机 home 里的 dict 文件夹传输到本地的 home 下
代码语言:javascript
复制
15.ntpdate -u  ntp.aliyun.com      同步时间
代码语言:javascript
复制
16.vi XXX                          编辑文件
# 底行模式
    # 移动
    -- w      :移动光标到下一个单词
    -- b      :移动光标到上一个单词
    -- 0      :数字零,移动到某一行的开头
    -- $      :移动到某一行的结尾
    -- gg     :移动到文件的第一行
    -- G      :移动到文件的最后一行
    
    # 复制粘贴
    -- yy     :拷贝光标所在行
    -- p      :粘贴 yy 所复制的内容,(光标所在行往下粘贴)
    -- nyy    :复制光标所在行连同所在行往下 n 行
    
    # 删除
    -- dd     :删除光标所在行
    -- ndd    :删除光标所在行往下 n 行
    -- D      :删除当前光标所在位置到行尾的内容
    -- dG     :删除当前行到文档尾部的内容
    -- x      :删除光标所在的字符
    
    -- u      :撤销上一级的操作
    
    # 查找
    -- /xxx   :从上往下找 xxx,按 n 找下一个,按 N 找上一个,从上往下
    -- ?xxx   :从下往上找 xxx,按 n 找下一个,按 N 找上一个,从下往上
    -- %      :光标移动到括号上方,按 % 可以找到括号,中括号,大括号的另一半
    
    -- ctrl+f :下一页
    -- ctrl+b :上一页 
    
    -- :q!   :强制退出
    -- :wq!  :强制写入退出(保存)
    -- :set nu :显示行号
    -- :n    :跳转到第 n 行
代码语言:javascript
复制
17.su - username                    切换用户
代码语言:javascript
复制
18.sudo XXX                        使普通用户以 root 身份去执行 XXX 命令,解决权限不足的问题
# vim /etc/sudoers 
# 写入
     ## Allow root to run any commands anywhere 
	 root    ALL=(ALL)       ALL
	 leon    ALL=(ALL)       ALL   #在这里写入你想添加的用户
	 davis   ALL=(ALL)       ALL   #在这里写入你想添加的用户
代码语言:javascript
复制
# 用户、群组、权限
权限的 r  w  x  的顺序是固定的!!!
权限的 r w x 的顺序是固定的!!!
代码语言:javascript
复制
# 对于与文件夹
    -- r    可以对此目录执行ls列出所有文件
    -- w    可以在这个目录创建文件
    -- x    可以cd进入这个目录,或者查看详细信息
    
# 权限分配,linux有三个用户身份,可以设置权限,分别是:
    -- user	    所属用户
    -- gourp 	所属用户组
    -- other 	谁也不属于,其他人的身份

19.chmod 权限操作 文件/文件夹
20.chmod -R 权限操作 文件夹          对文件夹下的所有文件/文件夹统一修改权限
#  支持 加减   复制等于  数字
    -- chmod o+rwx test.py          对 other  添加 可读可写可执行 权限
    -- chmod g-w   test.py          将 group  的可写权限收回
    -- chmod u=-r- test.py          将 user   的权限设置只能可读
    -- chmod 764   test.py          user -> rwx ,group --> rw ,others --> r
    
21.chown 用户名 文件/文件夹          文件/文件夹自改所有者
22.chown -R 用户名 文件夹            文件夹下的所有文件/文件夹统一修改所有者
 
23.gropadd XXX                      添加一个叫 XXX 的群组
24.gropdel XXX                      将 XXX 这个群组删除

25.chgrp 群组名 文件/文件夹          文件/文件夹修改所属群组
26.chgrp -R 群组名  文件夹           文件夹下的所有文件/文件夹统一修改群组
  
27.gpasswd  -a 用户名  群组名        将用户添加进指定群组  
28.gpasswd  -d 用户名  群组名        用户退出对其群组 
代码语言:javascript
复制
29.linux命令提示符更改,PS1变量
# echo $PS1  -->  [\u@\h \W]\$
# PS1="xxxxxxxxx"
# \h  主机名第一个名字
# \t  时间24小时制HHMMSS
# \W  利用basename取得工作目录名
# \w  完整工作目录
代码语言:javascript
复制
# linux的防火墙概念
# 因为如果你不关防火墙,很可能你后面运行 django、nginx、mysql
# 防火墙可能会阻挡端口流量的 出口
# 也会阻挡外来请求的入口 

30.关闭selinux
	-- getenforce                  获取selinux状态
	-- setenforce 0                临时关闭selinux,重启后又会生效
	-- vim /etc/selinux/config     永久关闭selinux,写入到selinux配置文件
	-- SELINUX=disabled            更改为这个,重启后selinux永久关闭
	
31.iptables (软件防火墙)
	-- iptables -L                 查看防火墙规则
	-- iptables -F                 清空防火墙规则
	-- systemctl stop firewalld    关闭防火墙软件,这个服务永久关闭 
代码语言:javascript
复制
# Linux编码
# server和client端编码统一
# 修改linux中文编码支持
# 修改文件
# viw /etc/locale.conf 
# LANG="zh_CN.UTF-8"
# 读取这个文件,使得生效
# source /etc/locale.conf 
代码语言:javascript
复制
32.nslookup 域名               解析某个域名
# DNS服务:域名解析ip
# cat /etc/resolv.conf 
# Generated by NetworkManager
# nameserver 223.5.5.5        #域名服务器
# nameserver 223.6.6.6
# 常见的域名服务器有 
# 8.8.8.8
# 114.114.114.114
# 223.5.5.5                    #阿里巴巴 
# 223.6.6.6
# 119.29.29.29                 #腾讯的DNS
代码语言:javascript
复制
# 配置 yum 源
1.可以移除默认的yum仓库,也就是删除 /etc/yum.repos.d/底下所有的.repo文件(踢出国外的yum源)
2.配置yum源,找到阿里云的官方镜像源地址  https://opsx.alibaba.com/mirror
3.下载centos7的yum源
# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
4.清空旧的yum缓存 
# yum clean all 
5.生成新的yum仓库缓存(这个缓存来自于阿里云的yum仓库,便于加速软件下载)
# yum makecache 
6.配置一个第三方的 额外仓库源  (epel源),这个源的作用是,如果阿里云源找不到这个软件,就在这里找
# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
7.yum 安装的软件都可以通过 systemctl start/stop/restart/status 软件名来操作软件
代码语言:javascript
复制
33.sed 's/xxx/yyy/g' 111.txt > 222.txt
# 将 111.txt 里面所欲的 xxx 全部 替换为 yyy 并重写入 222.txt

4.查

代码语言:javascript
复制
01.pwd                              查看当前工作目录
代码语言:javascript
复制
02.man  命令名                      查看改命令的使用方式
代码语言:javascript
复制
03.ls                               查看当前文件夹下用户的文件个目录 
04.ll                               查看目录下的文件的详细信息 
05.ls -a                            查看当前下包括隐藏不显示的文件 
06.ll -a                            查看目录下包含隐藏不显示文件的详细信息  
代码语言:javascript
复制
07.cd  XXX                          切换到 XXX 目录  
代码语言:javascript
复制
08.cat XXX                          查看 XXX 文件 
09.cat XXX -n                       查看 XXX 文件,并且显示行号
10.cat XXX -E                       查看 XXX 文件,空白行会侠士 $ 符号  
代码语言:javascript
复制
11.whoami                           查看当前用户是谁   
代码语言:javascript
复制
12.tty                              查看终端信息
代码语言:javascript
复制
13.stat XXX                         查看 XXX 的详细信息
代码语言:javascript
复制
14.more  XXX                        从文件头部开始分页显示 XXX 文件,只支持向下滚动
代码语言:javascript
复制
15.less  XXX                        从文件尾部开始分页显示 XXX 文件,只支持向上滚动
代码语言:javascript
复制
16.head -n  XXX                     显示 XXX 的前 n 行
代码语言:javascript
复制
17.tail -n  XXX                     显示 XXX 的后 n 行
# tail -n  XXX                      动态显示 XXX 的后 n 行
# tail -f  XXX                      动态显示 XXX 尾部最后10行的信息,并且循环刷新
# tail -n +10 XXX                   动态显示 XXX 第十行及之后一直到文件尾部的内容
代码语言:javascript
复制
18.find  xxx/xxx -name aaa*          在 XXX 目录里面找出 name 里面带 aaa 的文件,不适用于目录
19.find  xxx/xxx -type Y             在 XXX 目录里面找出 Y 类型的文件
# find ./ -name test -type d         找出当前目录名字叫 test 的目录
# 文件类型
    -- d :目录
    -- f :常规文件,或直接就是一个 " - ",也是代表常规文件的意思
    -- b :块设备文件
    -- c :字符设备文件
    -- l :符号链接文件
    -- s :socket文件
代码语言:javascript
复制
20.grep aaa XXX                     从 XXX 里面筛选出跟 aaa 相关的信息   
21.grep aaa XXX -n                  从 XXX 里面筛选出跟 aaa 相关的信息,并显示行号
22.grep aaa XXX -i                  从 XXX 里面筛选出跟 aaa 相关的信息,忽略大小写
23.grep aaa XXX -v                  从 XXX 里面筛选出跟 aaa 不相关的信息
# grep aaa XXX -i -v -n             组合使用
代码语言:javascript
复制
24.tail -f XXX                      动态监测查看 XXX 文件
代码语言:javascript
复制
14.which XXX                        查看 XXX 命令的路径
代码语言:javascript
复制
15.du XXX                           查看 XXX 文件的大小
16.du -sh XXX                       查看 XXX 文件夹的大小
代码语言:javascript
复制
17.df -h                            统计磁盘的大小
代码语言:javascript
复制
18.top                              动态监测系统进程
代码语言:javascript
复制
19.free (-h)                        以 MB 查看内存
代码语言:javascript
复制
20.chattr +a XXX                    给 XXX 上锁保护,不能被增删改
21.chattr -a XXX                    给 XXX 解保护锁,可以被增删改
22.lsattr XXX                       查看 XXX 文件执行 chattr 后的状态,一般联合使用
代码语言:javascript
复制
22.cat /etc/os-release              查看操作系统的详细信息
23.cat /etc/redhat-release          查看系统版本信息
24.uname -r                         查看内核版本号
25.uname -m                         查看系统多少位
26.uname -a                         查看内核所有信息
代码语言:javascript
复制
27.id username                      查看该用户的身份权限
代码语言:javascript
复制
28.netstat -tunlp                   查看网络端口
# 服务器的ip地址
# 127.0.0.1        本机回环地址,代表这个服务器自己,只能自己ping同自己
		           python manage.py  runserver 127.0.0.1:8000 
		   
# 192.168.12.85    代表当前机器的ip地址 
		           python manage.py  runserver 192.168.12.85:8000
		           在同一个局域网内,192.168.12.xx 这里面的人 都能访问
		   
# 0.0.0.0          及是127.0.0.1 又是 192.168.12.85 
			       python manage.py  runserver 0.0.0.0:8000
		   
		   
# 公网ip           全世界联网的人都能访问 
	               python manage.py  runserver 123.206.16.61:8000

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1.xshell 远程连接 Linux 服务器
  • 2.linux管理网卡
  • 3.管理网络配置的文件(修改静态 ip)
  • 4.对网络服务进行 启动 / 停止 / 重启
  • 5.Linux目录结构
  • 1.增
  • 2.删
  • 3.改
  • 4.查
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档