泷羽sec学习打卡-shell命令2

news/2024/11/28 16:21:05/

声明
学习视频来自B站UP主 泷羽sec,如涉及侵权马上删除文章 笔记的只是方便各位师傅学习知识,以下网站只涉及学习内容,其他的都与本人无关,切莫逾越法律红线,否则后果自负


关于shell的那些事儿-shell2

    • 临时变量和永久变量
    • 为什么使用ls、dir命令可以输出一些内容呢?
    • 如何创建属于自己的脚本且全局运行呢?
    • 创建永久变量
    • 如何解析字符串呢?
    • 实践是检验真理的唯一标准


临时变量和永久变量

上期分享了变量的定义都是一些临时变量,实际中临时变量用的少,只有全局变量和永久变量才是yyds
常见的变量

echo  $HOME(家目录  root用户)
HOME 是另一个环境变量,它存储了当前用户的主目录(或称为家目录)的路径。
运行 echo $HOME 命令会显示当前登录用户的主目录的完整路径。

/root
打印用户根目录
在这里插入图片描述

window中的环境变量都是在path中添加的

为什么使用ls、dir命令可以输出一些内容呢?

这里的命令对应的变量和脚本是哪些呢?
通过整个命令可以查看ls命令脚本所在的路径

which ls 

它用于查找并显示给定命令(在这种情况下是ls命令)的完整路径。ls命令是英文“list”的缩写,用于列出目录内容,显示指定目录下的所有文件和子目录。
在这里插入图片描述

echo $PATH
PATH 是一个环境变量,它定义了系统在执行命令时搜索可执行文件的目录列表。这个变量通常包含一系列以冒号分隔的目录路径。当你运行 echo $PATH 命令时,它会打印出当前用户环境变量 PATH 的值,即系统在寻找可执行文件时会查看的目录路径。

在这里插入图片描述

整个输出了/usr/bin目录是什么意思呢?
这个也就是本地的环境变量配置的目录

也就是说kail会找到ls命令对应的完整目录路径去执行ls脚本 /usr/bin/ls

如何创建属于自己的脚本且全局运行呢?

方法一:
创建一个dw.sh文件,直接写到/usr/bin目录下。
直接执行定义的变量
在这里插入图片描述
在这里插入图片描述
标准流程:

touch ~/dw.sh
nano ~/dw.sh(也可以用vi vim)

编写shell脚本内容

#!/bin/bash
echo "Hello, world!"

添加执行权限

chmod +x ~/dw.sh

复制到指定运行目录下

sudo cp ~/dw.sh /usr/bin/dw

设置用户权限

sudo chmod 755 /usr/bin/dw

方法二:
可以把root目录添加号环境变量中,这个类似windows中配置环境变量

export PATH=/root:PATH

把 /root 这个目录加到你的系统路径(PATH)的最前面。
这样,当你在命令行输入一个命令时,系统会先在 /root 目录下找这个命令。
这个命令只在当前打开的命令行窗口有效,关闭窗口后设置就失效了。
查看root目录是否被添加到环境变量中

echo $PATH()

在这里插入图片描述
但是这个只能在当前窗口生效

创建永久变量

export知识创建了临时变量,那么我们如何创建永久变量呢?
我们可以把变量写入配置文件中
vi .bashrc
export PATH=/root:PATH
source (变量生效或者重启生效)
在这里插入图片描述
cat查看环境变量配置文件
在这里插入图片描述
.bashrc 文件是位于用户主目录(通常是 /home/your_username)下的一个隐藏文件,它用于存储用户的 Bash shell 个性化设置,包括环境变量、命令别名、函数定义等
。这个文件在每次启动新的终端会话时都会被加载,以应用这些个性化设置
在这里插入图片描述

新开一个终端查看变量是否生效

如何解析字符串呢?

定义字符串变量
name=“xiaoyu” age=18
打印变量字符串

echo ""my name is $name and i am $age years old

在这里插入图片描述

str="hello world"
echo ${#str}

打印指定的字符串,这个类似python中的且切片

echo ${str:0:3}

在这里插入图片描述

咱就是说,这些命令,咋说呢?比较基础,但是依然需要掌握,基础不牢,地动山摇。

实践是检验真理的唯一标准


http://www.ppmy.cn/news/1550665.html

相关文章

Milvus实操

概念 Milvus 关键概念优化笔记 Milvus 是一个高性能、可扩展的开源向量数据库,专为处理海量向量数据和执行相似性搜索而设计。以下是 Milvus 中的一些核心概念及其详细解释。 1. 集合(Collection) 定义: 集合是 Milvus 中存储向…

如何分析Windows防火墙日志

Windows防火墙,也被称为Windows Defender Firewall,是一种内置的安全功能,可以主动监控和分析运行Windows操作系统的计算机上通过Windows防火墙的网络流量,主要目的是作为计算机和互联网或其他网络之间的屏障,使管理员…

python计算stable-diffusion-1.5模型参数量以及该模型每一层网络的参数量【其他LLM模型也有参考意义】

最近在计算stable-diffusion-1.5模型参数量上花了点心思,总结了一些方法,一起学习: stable-diffusion-1.5模型结构 首先stable-diffusion-1.5模型主要有三个关键组件(text_encoder,unet,vae),关于stable-…

【NLP 2、机器学习简介】

人生的苦难不过伏尔加河上的纤夫 —— 24.11.27 一、机器学习起源 机器学习的本质 —— 找规律 通过一定量的训练样本找到这些数据样本中所蕴含的规律 规律愈发复杂,机器学习就是在其中找到这些的规律,挖掘规律建立一个公式,导致对陌生的数…

Spring Boot整合Redis Stack构建本地向量数据库相似性查询

Spring Boot整合Redis Stack构建本地向量数据库相似性查询 在微服务架构中,数据的高效存储与快速查询是至关重要的。Redis作为一个高性能的内存数据结构存储系统,不仅可以用作缓存、消息代理,还可以扩展为向量数据库,实现高效的相…

Linux指标之平均负载(The Average load of Linux Metrics)

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:Linux运维老纪的首页…

redis cluster 3主3从部署方案

文章目录 1 Redis Cluster 介绍1 Redis cluster 架构2 Redis cluster的工作原理2.1 数据分区2.2 集群通信2.3 集群伸缩2.3.1 集群扩容2.3.2 集群缩容 2.4 故障转移2.4.1 主观下线2.4.2 客观下线 3 Redis Cluster 部署架构说明3.1 部署方式介绍3.2 实战案例:基于Redi…

Jmeter测试nginx部署的静态网页最大在线人数

一、下载Jmeter apache-jmeter-5.4.3.tar资源-CSDN文库 解压之后,双击ApacheJMeter.jar,即可打开 二、测试最大在线人数 1、plugins-manager下载安装 起初刚解压的jmeter里面没有插件管理这个选项 去官网下载:Install :: JMeter-Plugins.org 将下载j…