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,##/%%读取最后一个)

相关推荐
JWASX1 分钟前
Java 转 go 学习 - 接口
学习·golang
I Am a robert girl11 分钟前
从零读懂世界模型的持续学习:一份组合式基准的源码级拆解
学习·具身智能·持续学习·灾难性遗忘·机器人学习·世界模型·组合式基准
扶风ff16 分钟前
练题簿在线免费刷题:刷题、背题、错题复习,一个小程序安排日常备考
学习·小程序
東隅已逝,桑榆非晚19 分钟前
数据结构队列
数据结构·笔记·学习
老王爱玩车19 分钟前
字符串和字符串函数
c语言·开发语言·数据结构·学习
扶风ff22 分钟前
练题簿在线免费刷题:共享题库、学习任务、在线考试,岗位培训更方便
学习·小程序
JWASX26 分钟前
Java 转 go 学习 - 并发编程(3)
学习·golang
传奇开心果编程40 分钟前
【Compose Multiplatform 跨端开发学与练】第9课 测试与调试
android·学习·macos·ios·kotlin·web·composer
欣欣之王来了1 小时前
5G网络基础:5G的核心特性,eMBB、uRLLC、mMTC的应用场景
网络·学习·计算机网络·安全·教程
Xudde.1 小时前
CVE-2026-24061漏洞复现
学习·安全