shell脚本初学习

Shell脚本通常以.sh作为拓展名(不用拓展名也可以执行脚本,主要为了更直观看出文件是shell脚本)

脚本第一行通常以#!并加绝对路径,绝对路径指向解释器程序,用来解释执行此脚本,

#!/bin/bash(所有发行版本都默认预装了)

以下就可以输入命令,在命令行能执行的都可以,

例如echo Hello World!

在命令界面输入

  1. 指定对应解释器程序运行脚本

/bin/bash test.sh (明确将脚本交给bash执行)

  1. 给脚本文件加上执行权限

Chmod +x test.sh

这样一来直接执行程序即可

./test.sh(这样要求脚本第一行必须指定解释程序绝对路径)

在echo命令中,要想让转义符执行,要加选项-e

``反引号输出执行里面的命令 例如:`date +%F:%T`

''单引号原样输出,但括号里内容直接输出原样

""双引号解析变量(、%)其他的原样输出,"你好name,年龄$age"

在命令也输入a=1是只针对当前shell进程有效

Export是针对当前进程与子进程都有效

+加号后面不加空格

改变字体颜色 \033[1;33m\033[2m

\033(固定搭配)[1(改变字体);33(改变字体颜色)m\033[2m

预定义变量 $?返回上一个命令返回的结果(零或非零)

Echo "1.2+1" | bc (bc可计算小数)

不能使用程序中带的单词(if、for)

数字、下划线_和字母开头a=1

Sep

$0绝对路径

$@逐一输出

$*全部输出

$#变量个数输出

$$脚本进程产生ID输出

$?返回上一个命令返回的结果

Exit结束 ,后接(上限值0~255之间)

Strace ls可以追踪执行过程

\ 转义符 echo "\ab"屏蔽的定义 输出a2

Echo ${star1(#/%)*l} (#表示留下l右边,%表示留下l左边 读取第一个l,##/%%读取最后一个)

相关推荐
通信小呆呆6 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick6 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee6 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn866 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e6 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨6 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙
cqbzcsq6 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
YangYang9YangYan6 天前
2026初入职场学习数据分析的价值
学习·数据挖掘·数据分析
guslegend6 天前
理论学习:什么是 Coding Agent?
学习
自传.6 天前
尚硅谷 Vibe Coding|第三章(1) Claude Code深度使用与进阶技巧 学习笔记
笔记·学习·尚硅谷·vibecoding