鸟哥Linux(三)Shell Script && RE摘录

旧安卓手机秒变AI终端:Termux+Python部署Hermes Agent实战 CLI智能体是边缘计算时代轻量级自动化的核心范式,其本质是在受限设备上通过命令行接口实现本地化推理与任务调度。原理上依赖Linux用户空间隔离、Python异步生态及文件系统事件监听机制,技术价值在于零数据上传、离线运行与极低资源占用。典型应用场景包括旧手机再利用、隐私敏感型个人知识管理、家庭NAS智能分类等。本文聚焦Android平台,基于Termux构建免Root、免ADB的纯终端环境,结合Python生态快速集成Hermes Agent——一个不调用云端API、专为老旧硬件优化的CLI智能体框架,实测 阅读详情

1.指令测试功能:test
a)测试文件
test -e
test -f
test -d
b)测试文件的属性
test -r filename
test -w filename
test -x filename:是否可执行
test -s filename:是否为非空的文件
c)比较两个文件
test file1 -nt file2: newer than
test file1 -ot file2: older than
test file1 -ef file2: wehther the same file
d)比较两个整数
test n1 -eq n2
test n1 -ne n2
test n1 -gt n2
test n1 -lt n2
test n1 -ge n2
test n1 -le n2
e)判断字符串
test -z str: 判读str是否为空字符串
test -n str: 判读str是否为非空字符串,-n可以省略
test str1=str2
test str1!=str2
f)多重条件判定: test -r filename -a -x filename
-a:同时成立
-o:任何一个成立
!:反向

2.[]代替test:[ "${HOME}" == "${MAIL}" ]

3.shell script的参数
sh spr_name op1, op2, op3 ...
     $0      $1  $2   $3

条件判断式:
if [ 条件判断 ]; then
   do sth1
elif
   do sth3
else
   do sth2
fi


case $var in
 "case1")
   do sth1
   ;;
 "case2")
   do sth2
   ;;
 "case3")
   do sth3
 *)
   do oth(do other thing)
   ;;
esac

while [ 条件 ]
do
      sth
done
如果条件成立,就一直循环

until [ 条件 ]
do
      sth
done
如果条件不成立,就一直循环

for ((初始值;限制值;执行步阶))
do
   sth
done

for var in con1 con2 con3...
do
   sth
done



function fname() {
     do sth
}
这里的函数也有参数的概念,也用$0, $1, $2表示



sh [-nvx] scripts.sh

-n:不执行,只检查语法
-v:执行sh前,先把sh的内容输出到屏幕上
-x:将使用到的sh内容显示到屏幕上(用于debug)



Shell Regular Expression:
^:既可以是表示开头也可以表示非([^a]不等于小写字幕a)
{}:在shell中使用要转义, grep -n 'o/{2/}', 列出有2个o出现的次数


扩展的grep(grep -E):
For Example:grep -v '^$' xxx.txt | grep -v '^#' = egrep -v '^$|^#' xxx.txt

+:
?:
|:
():egrep -n 'g(la|oo)d' xx.txt

printf命令:
printf '打印格式' 实际内容


sed -[nefr] [action]:
-n:使用silent模式,只有经过sed处理的行才会被显示出来
-e:直接在指令模式上进行sed的动作编辑
-f:
-r:sed的支持延伸正则表达式的语法,默认是基础正则表达式

[n1[,n2]]action

n1行-n2行,可以没有

action:
aSTR:add,STR会加在目前行的下一行
cSTR:replace,STR可以取代n1和n2之间的行
d:   delete
iSTR:add,STR会加在目前上的上一行
p:   print,将某个选择的数据打印到屏幕,
s:   替换,s通常搭配正则表达式,1,20s/old/new/g  (1-20行的所有old替换为new)

例子:去掉ifconfig得到结果的1-10行,ifconfig | sed '1,10d'


awk:用于处理一个整行,把一行分为几个字段来进行。
awk '条件类型1 {动作1} 条件类型2 {动作2}...' filename

每一行中的第一个字库用$1表示,以此类推,$0表示这一行

awk的内置变量:
NF 每行拥有的字段数
NR awk目前处理的是第几行
FS 目前的分隔符,默认是空格


文件比较(文本):
diff -[bBi] file1 file2
-b:忽略空格的差异
-B:忽略空白行的差异
-i:忽略大小写的差异

文件比较(二进制):
cmp [-s] file1 file2
-s:列出所有的不同点,因为默认只会输出第一个不同点




expr op1 op op2: 执行一个表达式, expr 3 /* 5, 输出15

eval:执行shell 命令

shift: 左移一个参数,$2变成$1
date的格式化输出: date '+%H:%M:%S %Y-%m-%d'

                             date +%s

base path: Print NAME with any leading directory components removed

dirname path: Print NAME with its trailing /component removed; if NAME contains

uname -a: 输出机器名的详细信息

echo $$: 输出本进程(bash)的ID

tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。

 

基于Python与FFmpeg的自动化视频创作工作流实践 在当今内容创作领域,自动化工作流已成为提升效率的关键技术。其核心原理是通过脚本将重复性任务串联,实现流程的标准化与无人值守运行。这种技术方案的价值在于将创作者从繁琐的后期制作中解放出来,使其能更专注于内容策划与创意本身。在短视频制作、知识分享等应用场景中,自动化工作流能显著降低日更成本,实现内容的规模化稳定输出。本文聚焦于“扣子视频工作流”这一具体实践,详细拆解了如何利用Python进行文本处理与AI调用,结合FFmpeg完成视频合成,最终构建一套完整的“每日读书视频”自动化生产线。 阅读详情

相关推荐

4D毫米波雷达点云可视化实战:从CANFD原始数据到Matplotlib三维动态图

本文详细介绍了4D毫米波雷达点云可视化实战,从CANFD原始数据解析到Matplotlib三维动态图实现的全流程。通过解析CANFD数据帧结构、点云数据编码原理,并结合Python实现CANFD通信接口,帮助开发者掌握4D雷达数据处理与优化技巧,最终实现高性能的3D点云动态可视化。

u9v0w的博客 568

Linux &&命令

命令之间使用&&连接,实现逻辑与的功能。 只有在&&左边的命令返回真(命令返回值$?==0),&&右边的命令才会被执行。 只要有一个命令返回假(命令返回值$?==1),后面的命令就不会被执行。 mkdirtest&&cdtest ...

学亮编程手记 828

图形学基础|球谐光照(Spherical Harmonics Lighting)

球谐光照(Spherical Harmonics Lighting) 文章目录球谐光照(Spherical Harmonics Lighting)一、前言二、球谐函数2.1 基函数2.2 投影与重建2.3 应用三、漫反射环境光3.1 IrradianceMap3.2 数学推导3.3 实践参考博文 一、前言 在学习图形渲染的过程中,一直對球谐函数(球谐光照)有一点了解,但没有亲手实现过。 关于球谐函数的数学概念是比较复杂的,笔者也实在无法完全理解,这篇文章只能从做东西的角度来说,公式是如何和代码进行对应的。

【黑键】 1万+

工作中使用到的单词(软件开发)

1.エイリアス   alias 别名 powershell使用 get-help 命令时,会得到与此命令 相关(别名)的命令 2.プロキシ proxy 代 理 3.プロモート   promote 促进,提升   开发的系统新功能上线发布,有时会使用到这个词,比如 STプロモート 还有使用リリース这个词的。比如STリリース。个人认为两者含义相同。 4.見逃し み................................................................

sun0322 6万+

用Python玩转ROS机械臂:YOLO目标检测+MoveIt!自动抓取仿真教程

本文详细介绍了如何利用Python集成YOLO目标检测与ROS的MoveIt!运动规划库,实现机械臂的智能抓取仿真。通过Gazebo仿真环境,从视觉感知、坐标转换到运动规划与执行,构建了一套完整的自动化抓取系统,为机器人视觉抓取应用提供了可复现的实践方案。

ppp33的博客 552

Unity必学:Protobuf-net预编译实战

本文深入解析Unity项目使用Protobuf-net Precompile的必要性。作为高效跨平台序列化方案,Protobuf-net解决了Unity工程在网络同步、存档系统中的性能瓶颈,特别是针对iOS等AOT平台的兼容问题。通过预编译模式,将运行时反射转为静态代码生成,显著提升移动端性能表现,支持协议平滑升级,已成为大厂项目的标配方案。文章从原理、实践到多平台适配,全面展示了这一"序列化发动机"如何支撑现代Unity项目的数据传输需求。

本博客聚焦游戏开发技巧、创业实战心得及大学热门课程干货。这里既有技术深度,也有思维广度,无论你是开发者、创业者还是高校学子,都能在这里找到适合自己的成长之路! 494

Codex++ 安全边界实战指南:风险识别与防御部署

本文是一份面向开发者和安全工程师的**手把手实战指南**,旨在帮助读者系统掌握Codex++安全边界的识别、评估与防御技术。全文围绕**风险识别→攻击模拟→防护部署→持续监控→应急响应**的完整闭环展开,涵盖10个核心模块、40余个实战案例、60余段可运行的代码示例。

独坐一隅,凝神遐想,是种幸福! —— 独隅 598

Autosar入门_OS_5

os hook函数说明

u012406840的博客 397

Python对unicode文件的读写和使用正则表达式

Python对unicode文件的读写和使用正则表达式

Karl的专栏 1万+

高通IPA硬件加速介绍

‌ 高通IPA (Internet Protocol Accelerator)模块是一种硬件加速模块,由高通公司(Qualcomm)提供,主要用于优化移动设备上的网络数据传输,特别是通过 LTE 、 5G 等移动网络的数据传输‌‌。IPA模块通过硬件加速,显著提高了数据传输的速度和效率,同时降低了设备的功耗,并提供了更稳定的网络连接,减少了数据传输中的丢包和延迟‌。

四儿家的小祖宗的博客 1622

YOLO11改进-模块-引入多尺度差异融合模块MDFM

MDFM主要用于融合双时相图像特征并生成带有丰富上下文信息的差异特征,其过程包含以下步骤:1. 特征提取与差异特征生成首先从双时相图像中提取特征f1和f2,然后将f1和f2进行像素级别的相减,再对相减结果取绝对值,最后通过一个3x3的卷积操作得到Di。2. 多尺度特征融合(MSFF)接着利用多尺度特征学习机制来增强特征融合效果。该机制通过不同核大小的卷积构建多尺度融合过程,具体是通过一个名为 MSFF 单元来实现的。

qq_64693987的博客 4378

一个简单程序的 gdb 反汇编 分析

《深入理解计算机》的第三章已经看了两遍了,一直都是在看书里的程序,一些内容都是第一次接触,也一直没有在真正的Linux上用过,今天写了下发现和书里的还是有些出入,下面是我自己的理解。gdb除了反汇编外,还可以用于代码的调试。下面就简单记录下容易忘记的部分。1.gcc -g -o code code.c   这里不要忘记-g2.watchpoint的概念   VC用惯了就是不好,在v

Karl的专栏 1万+

2025.06.06【Ribo-seq】|RiboCode:基于Ribo-seq数据的全基因组翻译ORF检测工具详解与实战流程

大家好!今天我们要学习的是RiboCode——一个专为Ribo-seq(核糖体足迹测序)数据设计的高质量翻译ORF(开放阅读框)检测工具。RiboCode能够帮助我们在全基因组范围内精准识别翻译事件,发掘经典CDS之外的uORF、dORF、重叠ORF等新型翻译本,极大拓展了我们对转录本翻译潜能的认知。RiboCode 是由清华大学杨学睿课题组开发的开源软件,支持Linux/Mac平台,采用Python实现。自动化流程:一条命令即可完成注释准备、P-site定位、ORF预测。高灵敏度与特异性。

1855

鸟哥Linux(二)-bash shell命令摘录&Compress cmd

c[tab][tab]: 获得以c开头的shell命令alias lm=ls -al : 取别名unaliastype [cmd] : 判断是bash内建还是非内建的cmd":双引号内的特殊字符可以保有变量特性:单引号内的特殊字符尽为一般的字符unset 变量名:取消变量名$HOME 或 ${HOME}uns$PATH$SHELL$

Karl的专栏 3031

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Python的Regular Expression小摘(《python 核心编程》)

 re1|re2:匹配正则表达式1或2.      :任何字符(换行除外)^      :串的开始$      :串的结尾*      :零次或多次+      :一次或多次?      :零次或一次{N}    :匹配前面出现的正则表达式N次{M,N}  :匹配重复出现M次到N次的正则表达式[...]  :匹配字符组里出现的任意一个字符    [zeiou]

Karl的专栏 1447

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

vmware ubuntu 10.04升级小记

vmware ubuntu 10.04升级小记

Karl的专栏 1270

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

gdb 的命令摘要

 整理的,方便以后查看 GDB调试器:用法 unix > gdb prog开始和停止quit                 exit gdbrun                  run your programkill                 stop your program断点break sum            set bre

Karl的专栏 1015

鸟哥linux(一)vi的操作摘录

这个是摘录于鸟哥私房菜的,方便查看//移动h: 光标向左移动一个字符j: 光标向下移动一个字符k: 光标向上移动一个字符l: 光标向右移动一个字符多次移动:数字 + 方向, 30j 或 30下Ctrl - f:向下移动一页Ctrl - b:向上移动一页Ctrl - d:向下移动半页Ctrl - u:向上移动半页+:光标移动到非空格符的下一列

Karl的专栏 960

第一章 Shell 概述

本文介绍了Shell编程的基础知识,包括Shell的起源与发展、常见Shell类型及查看方式,阐述了Shell作为命令解释器连接用户与操作系统内核的作用。强调其作为解释型脚本语言的优势,适用于系统管理自动化任务。内容涵盖Shell脚本基本结构、注释规范、编写风格、执行方法及常用命令(如echo、printf、history、管道等),并讲解了命令执行顺序、退出状态码等核心概念,为初学者提供系统学习路径。

sbjdhjd的博客 264

DeepAgents框架构建一个带有严格安全护栏的本地 Shell 执行环境。

核心亮点在于:通过精心设计的 System Prompt(系统提示词)强制约束大模型的行为,防止其通过操作系统底层的 Shell 命令绕过框架的虚拟沙箱,从而确保本地物理磁盘的绝对安全。DeepAgents 框架接入 DeepSeek 模型并构建一个带有严格安全护栏的本地 Shell 执行环境。

qq_42092076的博客 52

set -x 在 shell 脚本中的作用和用法详解

set -x的默认前缀由PS4控制,默认通常是。set -xecho hellohello可以显示脚本名、行号、函数名,便于定位。Bash 中PS4的第一个字符会按调用层级重复,例如可能看到+++++,用于表示嵌套层级。set -x # 开启set +x # 关闭set -xcommand1command2set +xset -x一句话:set -x用于把实际执行的命令打印到 stderr,是 shell 脚本最直接、最常用的调试开关;使用时注意局部开启、重定向日志和敏感信息泄露。

zhaominyong的专栏 75

OpenCode v2 插件开发进阶:事件钩子、Secret 防护与审计日志

从插件加载顺序、TypeScript 结构与事件体系出发,完整实现 Secret 文件拦截、Shell 环境注入、工具调用审计、会话通知和 Compaction 上下文保留,并系统讲解脱敏、失败策略、供应链、性能与企业上线方法。

jerry764的博客 196

保姆级 | CTF Shell 运算符命令注入:ping 命令后面偷偷追加 cat /flag

这一关模拟了一个常见的“在线 ping 工具”:你输入一个 IP,服务器就执行ping。但由于用户输入被直接拼接到命令里、没有任何过滤,我们可以用 Shell 运算符在 ping 后面追加任意命令,从而读出 flag。本文讲清楚四个 Shell 运算符和完整注入过程。本题完整链路:输入拼进→ 用;追加cat /flag→ 命令被拆成两条依次执行 → 读出 flag。本关是命令注入,输入是“拼进固定命令”,不是整条命令;用;可无条件追加命令,最稳;&&看成功、||看失败,依据是返回值;

YY888888_的博客 365

Linux、Shell、MySQL 测试卷逐题细讲(下篇:MySQL)

本文为Linux、Shell、MySQL测试卷下半段MySQL部分逐题讲解,包含填空、选择与SQL分析三类题型。填空题覆盖COUNT、HAVING、DISTINCT、事务、约束、索引等核心语法;选择题辨析存储过程、索引类型、ACID、存储引擎、用户管理等考点。SQL大题围绕员工、部门、职位、地点四张关联表,考察多表连接、分组聚合、自连接、相关子查询、NULL处理等高频写法,标注LEFT JOIN统计计数、NULL判断、子查询别名等易错坑点,同时梳理试卷OCR识别带来的干扰问题,重点提示SQL实操中的常见失误

dongziwen1的博客 179

CST如何通过Shell Solid or Thicken Sheet对模型进行挖空及加厚

在CST建模中,ShellSolid可对实体模型挖空,形成壁厚为指定值的封闭或开放壳体,通过选择不同面可控制开口位置;ThickenSheet则用于将无厚度二维片体加厚为三维实体。操作时需在导航树中选中模型,调用ShapeTools中的相应功能,设置厚度并预览确认。两者结合可高效实现复杂结构建模,适用于电磁仿真前处理。

a18665053298的博客 129
上一篇: PC休闲游戏~植物大战僵尸-植物连连看v1.0正式发布啦(更新iPhone版本)!
下一篇: 配置jira的svn和fisheye插件
LuckilyYu
博客等级 码龄20年 72粉丝 89原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值