Linux的简单笔记

Linux

开源的操作系统,一切皆文件!

nohup sh xxx.sh &

目录结构

  • 根目录(只有一个)
    • bin 动态库
    • dev 设备管理
    • home 家目录
    • opt
    • medila 挂载的文件夹
    • root等

实操

查看ip地址

6: ipconfig

7:ip address

阿里云 : curl ifconfig.me

1. VI和VI编辑器

Linux 内置 vi和vim编辑器,vim一般为vi的增强

  • 三种模式

    • 正常模式

      vi 加文件,正常模式下可以使用快捷键,,上下左右 复制粘贴!

    • 插入模式 i 进入 , esc退出

      按下 i o a r 进入编辑模式

    • 命令行模式 :进入 , esc退出

      :wq 保存退出 :X 也是
      q 不保存退出

      :q ! 强制退出

  • 快捷键使用

    • 拷贝:yy
    • 粘贴:p
    • 删除行 :dd
    • 查找 : /关键字 n 就是下一个 N 是上一个
    • 设置行号(需要命令行下 ) set nu 取消 set nonu
    • 文档最末行 G 最首行 gg
    • 撤销 u

2.开机,重启,注销

  • 关机
    • shutdown
      • shutdowm -h now 立即关机
      • shutdowm -h 1 一分钟后关机
      • shutdowm -r now 立即重启
    • halt:关机
    • reboot :重启系统
    • sync 把内存数据同步到磁盘 防止数据丢失

3.用户管理

用户组的概念(多个权限的集合)

用户家目录的概念:/home—有各个用户下的用户目录,用户登录后会自动进入自己的家目录

  • 添加用户

    • useradd 【选项(可不写)]】用户名------未指定组,会自动创建个组
    • useradd -d 目录 用户名 -----指定目录
    • useradd -g 组名 用户名 -----创建用户时直接指定用户组
  • 指定密码或者修改密码

    • passwd 用户名
  • 删除用户

    • userdel 用户名;保留了家目录
    • userdel -r 用户名 ; 同时删除家目录
  • 查询用户信息

    • id 用户名
  • 切换用户

    • su - 用户名
      • 权限高的用户切换到权限低的用户不需要输入密码
      • 权限低的用户切换到权限高的 需要输入密码
    • exit : 重新回到上一个用户、
  • 查看当前用户

    • who am i
1.用户组

可以对有共性的多个用户共同管理,类似于池的概念

  • 增加组
    • groupadd 组名
  • 删除组
    • groupdel 组名
  • 修改用户组
    • groupmod -g 组名 用户名
2.用户和组的相关文件
  • /etc/passwd 文件中用户信息
  • /etc/gorup 用户组信息
  • /etc/shadow 密码信息(加密的)

4.实用指令

1.运行级别

运行级别的配置文件为 etc/inittab 文件

基本语法:

​ init 0123456

  • 0 关机 init 0
  • 1 单用户(找回用户密码)
  • 2 多用户无网络服务
  • 3 多用户有网络
  • 4 保留级别
  • 5 图形界面
  • 6 重启
面试题: 如何找回root的密码?
	进入单用户级别模式,root不需要密码就可以登录。
    在装linux 服务器的电脑上进行操作
2.帮助指令

当对某个指令不熟悉时,可以使用帮助指令来了解该指令的使用方法

  • man[命令或者配置文件] man[ls]
  • help 帮助
3.文件目录类
  • pwd 当前目录 , fpwd 在ftp下的 下载地址

  • ls 当前目录下文件

    • ls -a 目录、文件 (显示所有的)
    • ls -l 能查看文件的权限
  • cd 切换指令

  • mkdir 创建目录和文件

    • mkdir -p 创建多级目录
  • touch 创建空文件

    • touch 文件名
  • cp指令 拷贝

    • cp -r 原路径 现路径
  • mv 移动文件、重命名

    • mv old new 同一个目录下,修改名
    • mv 当前文件夹 新文件夹
  • rm -f 强制删除不用提示

  • cat 查看文件内容,只能浏览但是不能修改

    • cat -n 显示行号
  • more 分页显示

    • cat -n 文件 | more 分页展示,结合使用
  • less

    • 查看大型文件使用该命令
  • 输出重定向和追加

    • ‘>’ 输出重定向
    • ‘>>’ 追加
    • ls -l 》 a.txt 将显示的文件 重定向到a.txt中
  • echo 输出内容到控制台,一般输出环境变量

    • echo “111111111”
  • head 显示文件的开头内容

    • head -n xxxx(行数)
  • tail 显示动态的文件

    • tail -f xxxx
  • history 历史指令

    • history 10 查看最后十个指令
4.时间日期类指令
  • date 显示当前时间
    • date +%Y 当前年
    • date +%m 当前日, %d %S
    • date “+%Y-%m-%d %H:%M:%S”
  • date -s 设置日期
    • date -s “2020-12-06 22:48:00”
  • cal 显示日历指令
5. 搜索查找类
  • find 遍历指定目录下的文件路径
    • find 文件目录 搜索文件名
  • loacte 快速定位文件目录
    • 使用之前,需要创建locate数据库 updatedb指令
    • update 文件名
  • grep 指令,管道符 |
    • 从hello.txt 中查找 abc 并显示行号
    • cat hello.txt | grep -ni abc 带着i 不区分大小写
6.压缩 解压缩
  • tar 指令用的多 打包指令 tar.gz

    • tar 指令 xxxx/tar.gz 打包内容

    • <1> 将a b文件压缩为 a

      tar -zcvf a.tar.gz a.txt b.txt

      <2> 将a.tar.gz 解压

      tar -zxvf a.tar.gz

    5.组管理与权限管理

    1.linux 组基本概念

    用户必须在组内,不能独立与组外

    • 用户的所有者
      • 创建这个文件的创建者 ls -ahl

2.权限管理

  • 文件的权限

image-20201207000139093

1.后面的 rw 是属于该用户对于该文件的权限 rw----读写权限

2.r-- 用户所在组的权限

3.后面的 r-- 文件所在组的用户权限

6.任务调度
  • crontab 定时任务
    • crontab -l 查看存在的定时任务
      • crontab -e 编辑定时任务
      • crontab -r 删除 ----- 一般不使用 全部删除

案例:每隔一分钟查看文件并且输出到a.txt中

​ crontab -e 进入编辑

​ */ * * * * ls -l /home > a.txt

关于任务调度的时间设置

  • 五个* 之间需要空格隔开
  • 第一个 一个小时中的第几分钟 0—59
  • 第二个 一天中的第几个小时 0—23
  • 第三个 一月的第几天 1–31
  • 第四个 一年的第几个月 1—12
  • 第五个 一周中的星期几 0—7 0和7都是周天

*代表任意时间

,代表不连续的时间 *0 8,23 ------------第八个小时低二十三个小时的 0分钟

-代表连续的时间 *0 5 * * * 1-6 代表周一到周六的五点0分

/n 代表每隔多级执行一次

给编写的shell脚本设置可执行权限

  • chomd 744 xxxx.sh

7.分区基础知识

  • mbr分区
    • 四个主分区
      • 系统只能装在主分区
        • 扩展分区要占一个主分区
          • mbr 分区最大支持2TB
  • gpt 现在的主流分区
    • 支持无限多个主分区
    • 最大支持18E的大容量
    • Windows 7 64位之后 支持gpt
Linux分区(挂载点)
>  无论有多少个分区,只有一个主目录 

image-20201207225245373

  • lsblk -f 查看硬盘 老师不离开(谐音梗)
    • 查看分区和挂载的情况

image-20201207230102461

磁盘情况查询
  • df -h 查看指定目录 磁盘占用
  • df -lh 查看全部的

image-20201207231256322

进程管理

  • ps
    • ps -aux 显示所有进程
    • ps -ef 查看父进程
  • kill 终止进程
    • kill -9
  • service 进程
    • start
    • stop
    • restart
    • reload
    • status
  • top 进程动态监控

Shell编程

#### shell快速入门

每一句执行结束之后不需要分号

sh xxx.sh 该脚本不需要 权限 chmod 744 xxx.sh

1.脚本首先由 #! bin/bash  开头
2. echo “hello world!”
shell变量

系统变量与用户自定义变量

  • 系统变量 set 显示所有变量

  • $HOME , $PWD , $SHELL , $USER

  • 自定义变量

  • A=100

  • echo “$A” -----输出变量A

  • 静态变量

  • ReadOnly A=100

  • 设置环境变量

  • export 变量名=变量值

  • source 配置文件

  • echo $变量名

  • 条件判断

  • 基本语法

    • 【 condition 】—前后都有空格,非空返回真
    等于 =  或者  eq
    大于 -gt  大于等于 -ge
    小于 -lt	小于等于 -le
    判断文件是否存在 【 -e  文件名 】
    
  • ok 是否等于ok

    if 【 “ok”=“ok” 】
    	thrn  echo "true"
    		fi
    
  • 流程控制

    • if
    if[ xxxxx ]
        then  echo "if"
        elif  [ xxxx ]
        then echo "else"
        fi
    
    • case

    image-20201208233249463

    • for
    一:
        for 变量 in 值12
            do	
                程序
            dono
                
    二:
    
    • while
    while [ xxxx ]
    do
    	程序
    	
    	done
    

    image-20201209002436448

工作中使用补充

  • 从某些文件中查找出存在某个字段的文件
1. 从data目录下  的所有文件中  查找存在testabc字符串的文件
	find /data -name “*| xargs grep “test abc” -l  -l只展示文件名称
2.从vi中全部替换
	%s/文本1/需要替换成/g

3.两个服务器之间文件拷贝
scp /home/daisy/full.tar.gz root@172.19.2.75:/home/root
    
4.利用ftp 进行文件传输
    在需要传输文件的目录下 ftp url
    切换传输编码为二进制 bin
    传输 put 文件名称

笔记来自于b站linux教学视频,手打并不完全。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值