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

发布于:2024-12-06 ⋅ 阅读:(106) ⋅ 点赞:(0)

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



shell完结,这些都是shell的基础,实际中shell是非常强大的。 ## 不同脚本文件之间的交互 如何删除所有的脚本文件?
rm * .sh 

创建1脚本

方法一

vim 001.sh
echo "cool"

创建2脚本

vim 002.sh
写入:
. 001.sh
运行脚本
bash 002.sh

在这里插入图片描述

成功实现脚本的互相调用

方法二

vim 002.sh
指定来源
source 001.sh
bash 002.sh

在这里插入图片描述

示例:
创建脚本1-1.sh

vim 1-1.sh

写入
注意点:不能有空格

name="wr"
age=18

创建脚本1-2.sh写入

source 1-1.sh
echo "my name is $name,and i am $age years old"

运行

bash 1-2.sh

在这里插入图片描述

重定向

示例1

ls > 1.txt
cat 1.txt

在这里插入图片描述

who > 1.txt
who:这是一个 Unix 和 Linux 系统中的命令,用于显示当前登录系统的用户列表。
cat >1.txt

在这里插入图片描述

使用>>进行追加内容

ls >> 1.txt
cat 1.txt

在这里插入图片描述

把ls命令重定向到垃圾桶回收站

ls >> /dev/null

这个命令用于清楚痕迹
ls >> /dev/null 这个命令的作用是执行 ls 命令,列出当前目录下的文件和文件夹,然后将输出追加到 /dev/null 中。由于 /dev/null 是一个特殊的设备文件,任何写入其中的数据都会被丢弃,因此这个命令实际上不会显示任何输出,也不会保存任何数据。

示例2

创建一个dir.txt

vim dir.txt

写入内容

/home/user/music
/home/user/Pictures
/home/user/Documents

执行命令

ls -l < dirs.txt

ls -l < dirs.txt 会读取 dirs.txt 文件中列出的目录路径,并对每个路径执行 ls -l 命令,显示每个目录下的文件和文件夹的详细信息。
在这里插入图片描述

示例3

创建submit.txt

vim submit.txt

写入内容

subdir1
subdir2
subdir3

执行命令

ls < submit.txt

简单来说,就是 submit.txt 文件里写了几个目录的名字,ls 命令会显示这些目录里都有啥文件。
在这里插入图片描述

文件描述符

0 1 2
0:标准输入
1:标准输出
2:错误输出

例1

 ls > 8.txt 2> 9.txt
 cat 8.txt
 cat 9.txt

若ls命令输出正确,则将内容重定向写入到8.txt
在这里插入图片描述
在这里插入图片描述

例2

注意,2是错误输出,不能有空格

l > 3.txt 2> 5.txt
 cat 8.txt
 cat 9.txt

在这里插入图片描述

若1命令输出错误,则错误重定向写入到9.txt中
注意点:l是有这个命令的,
好啦,大家,本次shell到这里就结束啦,都是一些基础,其实shell不止这些,大家下来要学会信息收集多了解啊,我还是那句话。

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


网站公告

今日签到

点亮在社区的每一天
去签到