当前位置: 首页 > news >正文

【BASH】回顾与知识点梳理(目录)

【BASH】回顾与知识点梳理(目录)

    • 一. 认识与学习 BASH
    • 二. Shell 的变量功能
    • 三. 命令别名与历史命令
    • 四. Bash Shell 的操作环境
    • 五. 数据流重导向
    • 六. 管线命令 (pipe)
    • 七. 前六章知识点总结及练习
    • 八. 正则表达式(正规表示法)
    • 九. 扩展正则表达式(延伸正规表示法)
    • 十. 文件的格式化与相关处理
    • 十一. 八至十章知识点总结及练习
    • 十二. Linux 文件与目录管理
    • 十三. 文件内容查阅
    • 十四. 文件与目录的默认权限与隐藏权限
    • 十五. 指令与文件的搜寻
    • 十六. 十二至十五章知识点总结及练习
    • 十七. 什么是 Shell scripts
    • 十八. 条件判断式
    • 十九. 循环 (loop)
    • 二十. 十六至十九章知识点总结及练习

一. 认识与学习 BASH

入口

1.1 硬件、核心与 Shell
1.2 为何要学文字接口的 shell?
1.3 系统的合法 shell 与 /etc/shells 功能
1.4 Bash shell 的功能
1.5 查询指令是否为 Bash shell 的内建命令: type
1.6 指令的下达与快速编辑按钮

二. Shell 的变量功能

入口

2.1 什么是变量?
2.2 变量的取用与设定: echo, 变量设定规则: set/unset
2.3 环境变量的功能用 set 观察所有变量 (含环境变量与自定义变量)export: 自定义变量转成环境变量那如何将环境变量转成自定义变量呢?declare / typeset
2.4 影响显示结果的语系变量 :locale
2.5 变量的有效范围
2.6 变量键盘读取、数组: read、 array
2.7 与文件系统及程序的限制关系: ulimit
2.8 变量内容的删除、取代与替换 (Optional)变量内容删除(从前向后开始删除变量内容)变量内容删除(从后向前开始删除变量内容)变量的测试与内容替换

三. 命令别名与历史命令

入口

3.1 命令别名设定: alias, unalias
3.2 历史命令:history同一账号同时多次登入的 history 写入问题无法记录时间

四. Bash Shell 的操作环境

入口

4.1 路径与指令搜寻顺序
4.2 bash 的进站与欢迎讯息: /etc/issue, /etc/motd
4.3 bash 的环境配置文件login与non-login shell/etc/profile (login shell 才会读)~/.bash_profile (login shell 才会读)source :读入环境配置文件的指令~/.bashrc (non-login shell 会读)其他相关配置文件
4.4 终端机的环境设定: stty, set
4.5 通配符与特殊符号

五. 数据流重导向

入口

5.1 什么是数据流重导向standard output 与 standard error output/dev/null 垃圾桶黑洞装置与特殊写法standard input : < 与 <<
5.2 命令执行的判断依据: ; , &&, ||cmd ; cmd (不考虑指令相关性的连续指令下达)$? (指令回传值) 与 && 或 ||

六. 管线命令 (pipe)

入口

6.1 撷取命令: cut, grepcutgrep
6.2 排序命令: sort, wc, uniqsortuniqwc
6.3 双向重导向: tee
6.4 字符转换命令: tr, col, join, paste, expandtrcoljoinpasteexpand
6.5 分区命令: split
6.6 参数代换: xargs
6.7 关于减号 - 的用途

七. 前六章知识点总结及练习

入口

7.1 总结
7.2 练习

八. 正则表达式(正规表示法)

入口

8.1 什么是正规表示法
8.2 基础正规表示法语系对正规表示法的影响grep 的一些进阶选项基础正规表示法练习例题一、搜寻特定字符串例题二、利用中括号 [] 来搜寻集合字符例题三、行首与行尾字符 ^ $例题四、任意一个字符 . 与重复字符 *例题五、限定连续 RE 字符范围 {}
8.3 基础正规表示法字符汇整 (characters)
8.4 sed 工具(重点)以行为单位的新增/删除功能以行为单位的取代与显示功能部分数据的搜寻并取代的功能直接修改文件内容(危险动作)同时执行多条sed命令sed脚本文件

九. 扩展正则表达式(延伸正规表示法)

入口

9.1 egrep命令语法匹配指定模式的行(用法和grep相同)忽略大小写匹配(用法和grep相同)反向匹配(用法和grep相同)显示行号(用法和grep相同)递归搜索目录(用法和grep相同)匹配整词(用法和grep相同)统计匹配行数(用法和grep相同)显示匹配行及其上下文内容(用法和grep相同)
9.2 egrep和grep的区别
9.3 延伸型的正规表示法的特殊字符匹配重复字符(用法和grep不同)匹配分组模式(用法和grep不同)匹配'或'模式(用法和grep不同)匹配重复群组(用法和grep不同)

十. 文件的格式化与相关处理

入口

10.1 格式化打印: printf
10.2 awk:好用的数据处理工具awk 的逻辑运算字符
10.3 文件比对工具diffcmppatch
10.4 文件打印准备: pr

十一. 八至十章知识点总结及练习

入口

11.1 总结
11.2 练习情境模拟题一:透过 grep 搜寻特殊字符串,并配合数据流重导向来处理大量的文件搜寻问题。情境模拟题二:使用管线命令配合正规表示法建立新指令与新变量。

十二. Linux 文件与目录管理

入口

12.1 目录与路径相对路径与绝对路径相对路径的用途绝对路径的用途
12.2 目录的相关操作cd (change directory, 变换目录)pwd (Print Working Directory, 显示目前所在的目录)mkdir (make directory, 建立新目录)rmdir (remove directory, 删除『空』的目录)
12.3 关于执行文件路径的变量: $PATH
12.4 文件与目录的检视: ls
12.5 复制、删除与移动: cp, rm, mv, renamecp (复制文件或目录)rm (移除文件或目录)mv (移动文件与目录,或更名)rename(用字符串替换的方式批量改变文件名)
12.6 取得路径的文件名与目录名称:dirname, basename

十三. 文件内容查阅

入口

13.1 直接检视文件内容:cat, tac, nlcat (concatenate)tac (反向列示)nl (添加行号打印)
13.2 可翻页检视:more, lessmore (一页一页翻动)less (一页一页翻动)
13.3 资料撷取:head, tailhead (取出前面几行)tail (取出后面几行)
13.4 非纯文本档: od
13.5 修改文件时间或建置新档: touch

十四. 文件与目录的默认权限与隐藏权限

入口

14.1 文件预设权限:umaskumask 的利用与重要性:专题制作
14.2 文件隐藏属性chattr (配置文件案隐藏属性)lsattr (显示文件隐藏属性)
14.3 文件特殊权限: SUID, SGID, SBITSUID(Set UID)SGID(Set GID)SBIT(Sticky Bit)SUID/SGID/SBIT 权限设定
1.4 观察文件类型:file

十五. 指令与文件的搜寻

入口

15.1 脚本文件名的搜寻which (寻找『执行档』)
15.2 文件档名的搜寻whereis (由一些特定的目录中寻找文件文件名)locate / updatedbfind与时间有关的选项与使用者或组名有关的参数与文件权限及名称有关的参数额外可进行的动作
15.3 权限与指令间的关系让用户能进入某目录成为『可工作目录』的基本权限为何?用户在某个目录内读取一个文件的基本权限为何?让使用者可以修改一个文件的基本权限为何?让一个使用者可以建立一个文件的基本权限为何?让用户进入某目录并执行该目录下的某个指令之基本权限为何?

十六. 十二至十五章知识点总结及练习

入口

16.1 总结
16.2 练习
16.3 简答题

十七. 什么是 Shell scripts

入口

17.1 干嘛学习 shell scripts自动化管理的重要依据追踪与管理系统的重要工作简单入侵检测功能连续指令单一化简易的数据处理跨平台支持与学习历程较短
17.2 第一支 script 的撰写与执行撰写第一支 script
17.3 撰写 shell script 的良好习惯建立
17.4 简单范例对谈式脚本:变量内容由用户决定随日期变化:利用 date 进行文件的建立数值运算:简单的加减乘除数值运算:透过 bc 计算 pi
17.5 script 的执行方式差异 (source, sh script, ./script)利用直接执行的方式来执行 script利用 source 来执行脚本:在父程序中执行

十八. 条件判断式

入口

18.1 利用 test 指令的测试功能文件类型判断文件权限侦测两个文件之间的比较两个整数之间的判定判定字符串的数据多重条件判定
18.2 利用判断符号 [ ]
18.3 Shell script 的默认参数($0, $1...)shift:造成参数变量号码偏移
18.4 利用 if .... then单层、简单条件判断式多重、复杂条件判断式
18.5 利用 case ..... esac 判断
18.6 利用 function 功能

十九. 循环 (loop)

入口

19.1 while do done, until do done (不定循环)
19.2 for...do...done (固定循环)
19.3 for...do...done 的数值处理(C写法)
19.4 搭配随机数与数组的实验
19.5 shell script 的追踪与 debug
19.6 what_to_eat-2.sh debug结果解析

二十. 十六至十九章知识点总结及练习

入口

20.1 总结
20.2 练习

相关文章:

【BASH】回顾与知识点梳理(目录)

【BASH】回顾与知识点梳理&#xff08;目录&#xff09; 一. 认识与学习 BASH二. Shell 的变量功能三. 命令别名与历史命令四. Bash Shell 的操作环境五. 数据流重导向六. 管线命令 (pipe)七. 前六章知识点总结及练习八. 正则表达式&#xff08;正规表示法&#xff09;九. 扩展…...

TFRecords详解

内容目录 TFRecords 是什么序列化(Serialization)tf.data 图像序列化&#xff08;Serializing Images)tf.Example函数封装 小结 TFRecords 是什么 TPU拥有八个核心&#xff0c;充当八个独立的工作单元。我们可以通过将数据集分成多个文件或分片&#xff08;shards&#xff09;…...

【多维定向滤波器组和表面波】表面变换:用于高效表示多维 s 的多分辨率变换(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

45.113.201.X服务器远程不上是什么原因,有什么办法解决?

45.113.201.1远程登录不上可能有多种原因导致&#xff0c;以下是一些常见的问题和解决方法&#xff1a; 网络连接问题&#xff1a;确保本地网络连接正常&#xff0c;尝试通过其他设备或网络连接服务器&#xff0c;确认是否是网络问题导致无法远程登录。 IP地址或端口错误&…...

微信小程序 地图map(电子围栏圆形和多边形)

正常情况下是没有手机上画电子围栏的&#xff0c;公共平台上我也没找到&#xff0c;所以走了一个歪点子&#xff0c;就是给地图添加点击事件&#xff0c;记录点的位置&#xff0c;在画到电子围栏上就是添加电子围栏了&#xff0c;如果只是显示电子围栏就简单了 一、多边形电子…...

Dockerfile 文件

dockerfile是一个文本文件&#xff0c;包含一条条指令&#xff0c;每条指令都会构建一层镜,一般分为四部分&#xff1a;基础镜像信息、维护者信息、镜像操作指令和容器启动时执行指令&#xff0c;#为 Dockerfile 中的注释。 docker build 基于dockerfile制作镜像 OPTIONS参数 …...

ssm学院党员管理系统源码和论文PPT

ssm学院党员管理系统源码和论文PPT002 开发工具&#xff1a;idea 数据库mysql5.7(mysql5.7最佳) 数据库链接工具&#xff1a;navcat,小海豚等 开发技术&#xff1a;java ssm tomcat8.5 选题意义、价值和目标&#xff1a; 随着鄂尔多斯应用技术学院招生规模的不断扩大&…...

文件数字水印,附一种纯文本隐写术数字水印方法

数字水印&#xff08;Digital Watermark&#xff09;是一种在数字媒体文件中嵌入隐藏信息的技术。这些数字媒体可以是图片、音频、视频或文本等。数字水印不会对原始文件造成明显的视觉或听觉变化&#xff0c;但可以在一定程度上保护知识产权&#xff0c;追踪数据来源&#xff…...

测试开发(一) 使用Vue开发chrome插件

目录 一、引言 二、功能说明 三、【配置】操作演示 四、【请求拦截】演示 不断访问博客&#x...

游戏行业实战案例 4 :在线时长分析

【面试题】某游戏数据后台设有「登录日志」和「登出日志」两张表。 「登录日志」记录各玩家的登录时间和登录时的角色等级。 「登出日志」记录各玩家的登出时间和登出时的角色等级。 其中&#xff0c;「角色id」字段唯一识别玩家。 游戏开服前两天&#xff08; 2022-08-13 至 …...

记一次图片压缩引发的生产问题

省流&#xff1a; 死循环导致没有commit&#xff08;提交事务&#xff09;&#xff0c;transaction一直没有结束。 正文&#xff1a; 调用接口报错&#xff1a; jdbc报错&#xff1a; MySQLTransactionRollbackException: Lock wait timeout exceeded; try restarting tran…...

mybatis-flex探索

mybatis古今未来 最近无意之中发现了一个非常棒的持久层框架mybatis-flex&#xff0c;迫不及待研究了一下 发现简直就是我的梦中情框&#xff0c;之前写ibatis&#xff0c;后来写mybatis&#xff0c;接着写mybatis-plus&#xff0c;接着研究mybatis-flex ibatis ibatis是apa…...

用ClickHouse 文件表引擎快速查询分析文件数据

有时我们需要快速查询分析文件数据&#xff0c;正常流程需要在数据库中创建表&#xff0c;然后利用工具或编码导入数据&#xff0c;这时才能在数据库中查询分析。利用ClickHouse文件引擎可以快速查询文件数据。本文首先介绍ClickHouse文件引擎&#xff0c;然后介绍如何快速实现…...

esp8266httpclient_get_post使用

esp8266httpclient_get_post使用 #include<ESP8266WiFi.h> #include <ESP8266HTTPClient.h>//const char *ssid "AxxxIFI"; const char *password "xxxs879xxx68";const char* ssid "IT-nxxxang";const char* URL "http://…...

【Spring】创建一个Spring项目与Bean对象的存储

目录 一、创建Spring项目 1、创建Maven项目 2、配置maven国内源 3、引入spring依赖 4、添加启动类 二、将Bean对象存储到Spring&#xff08;IoC容器&#xff09; 1、创建Bean对象 2、将Bean存储到spring&#xff08;容器&#xff09;中 3、获取Bean对象 3.1、Applicatio…...

Docker的入门与使用

什么是Docker&#xff1f; docker官网 简介与概述 Docker 是一个开源的应用容器引擎&#xff0c;基于 Go 语言 并遵从 Apache2.0 协议开源。 Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中&#xff0c;然后发布到任何流行的 Linux 机器上&#x…...

Smart HTML Elements 16.1 Crack

Smart HTML Elements 是一个现代 Vanilla JS 和 ES6 库以及下一代前端框架。企业级 Web 组件包括辅助功能&#xff08;WAI-ARIA、第 508 节/WCAG 合规性&#xff09;、本地化、从右到左键盘导航和主题。与 Angular、ReactJS、Vue.js、Bootstrap、Meteor 和任何其他框架集成。 智…...

[分享]STM32G070 串口 乱码 解决方法

硬件 NUCLEO-G070RB 工具 cubemx 解决方法 7bit 改为 8bit printf 配置方法 添加头文件 #include <stdio.h> 添加重定向代码 #ifdef __GNUC__#define PUTCHAR_PROTOTYPE int __io_putchar(int ch)#else#define PUTCHAR_PROTOTYPE int fputc(int ch, FILE *f)#endi…...

[代码案例]学会python读写各类文件的操作(excel,txt,mat)

简介 python读写三类文件 excel文件 txt文件 mat文件 代码 """Description: python 读写各类文件 操作 """ import scipy as scipy from scipy.io import loadmat import xlwt import xlrd 读写excel文件workbook xlrd.open_workbook(test1.…...

【LeetCode】练习习题集【4月 - 7 月】

LEETCODE习题集【4月-7月总结】 简单 数组部分 1.重复数 题目&#xff1a; 在一个长度u为 n 的数组 nums 里的所有数字都在 0&#xff5e;n-1 的范围内。数组中某些数字是重复的&#xff0c;但不知道有几个数字重复了&#xff0c;也不知道每个数字重复了几次。请找出数组中…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件

今天呢&#xff0c;博主的学习进度也是步入了Java Mybatis 框架&#xff0c;目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学&#xff0c;希望能对大家有所帮助&#xff0c;也特别欢迎大家指点不足之处&#xff0c;小生很乐意接受正确的建议&…...

Unit 1 深度强化学习简介

Deep RL Course ——Unit 1 Introduction 从理论和实践层面深入学习深度强化学习。学会使用知名的深度强化学习库&#xff0c;例如 Stable Baselines3、RL Baselines3 Zoo、Sample Factory 和 CleanRL。在独特的环境中训练智能体&#xff0c;比如 SnowballFight、Huggy the Do…...

华为云Flexus+DeepSeek征文|DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建

华为云FlexusDeepSeek征文&#xff5c;DeepSeek-V3/R1 商用服务开通全流程与本地部署搭建 前言 如今大模型其性能出色&#xff0c;华为云 ModelArts Studio_MaaS大模型即服务平台华为云内置了大模型&#xff0c;能助力我们轻松驾驭 DeepSeek-V3/R1&#xff0c;本文中将分享如何…...

LRU 缓存机制详解与实现(Java版) + 力扣解决

&#x1f4cc; LRU 缓存机制详解与实现&#xff08;Java版&#xff09; 一、&#x1f4d6; 问题背景 在日常开发中&#xff0c;我们经常会使用 缓存&#xff08;Cache&#xff09; 来提升性能。但由于内存有限&#xff0c;缓存不可能无限增长&#xff0c;于是需要策略决定&am…...

MinIO Docker 部署:仅开放一个端口

MinIO Docker 部署:仅开放一个端口 在实际的服务器部署中,出于安全和管理的考虑,我们可能只能开放一个端口。MinIO 是一个高性能的对象存储服务,支持 Docker 部署,但默认情况下它需要两个端口:一个是 API 端口(用于存储和访问数据),另一个是控制台端口(用于管理界面…...

Sklearn 机器学习 缺失值处理 获取填充失值的统计值

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 使用 Scikit-learn 处理缺失值并提取填充统计信息的完整指南 在机器学习项目中,数据清…...

C++_哈希表

本篇文章是对C学习的哈希表部分的学习分享 相信一定会对你有所帮助~ 那咱们废话不多说&#xff0c;直接开始吧&#xff01; 一、基础概念 1. 哈希核心思想&#xff1a; 哈希函数的作用&#xff1a;通过此函数建立一个Key与存储位置之间的映射关系。理想目标&#xff1a;实现…...

在Zenodo下载文件 用到googlecolab googledrive

方法&#xff1a;Figshare/Zenodo上的数据/文件下载不下来&#xff1f;尝试利用Google Colab &#xff1a;https://zhuanlan.zhihu.com/p/1898503078782674027 参考&#xff1a; 通过Colab&谷歌云下载Figshare数据&#xff0c;超级实用&#xff01;&#xff01;&#xff0…...

大数据驱动企业决策智能化的路径与实践

&#x1f4dd;个人主页&#x1f339;&#xff1a;慌ZHANG-CSDN博客 &#x1f339;&#x1f339;期待您的关注 &#x1f339;&#x1f339; 一、引言&#xff1a;数据驱动的企业竞争力重构 在这个瞬息万变的商业时代&#xff0c;“快者胜”的竞争逻辑愈发明显。企业如何在复杂环…...

VSCode 没有添加Windows右键菜单

关键字&#xff1a;VSCode&#xff1b;Windows右键菜单&#xff1b;注册表。 文章目录 前言一、工程环境二、配置流程1.右键文件打开2.右键文件夹打开3.右键空白处打开文件夹 三、测试总结 前言 安装 VSCode 时没有注意&#xff0c;实际使用的时候发现 VSCode 在 Windows 菜单栏…...