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

相关推荐
狂云歌8 分钟前
AI时代,学什么,怎么学
人工智能·学习
lingguangbuzhi13 分钟前
【JAVA教程】java课程java学习编程
java·学习·教程
YM52e19 分钟前
鸿蒙 ArkTS 实战|防渣万能执行方案:五阶段防御体系 + 红线清单的代码实现
学习·华为·harmonyos
优化Henry36 分钟前
关于“星链”互联网系统的几点认识
运维·服务器·网络·笔记·学习·信息与通信
MartinYeung51 小时前
[论文学习]Poser:通过操纵内部结构揭示对齐伪装的大语言模型
人工智能·学习·语言模型
其实防守也摸鱼2 小时前
推荐一个自动化教育SRC漏洞挖掘系统--AutoHunter
运维·开发语言·人工智能·学习·安全·web安全·自动化
kkkkkkkkkk_Z9 小时前
学嵌入式和C语言编程数据结构|学习日记Day22:栈,二叉树,哈希存储
c语言·数据结构·学习
for_ever_love__11 小时前
python基础语法学习: 闭包
开发语言·python·学习·闭包
皮卡丘不断更13 小时前
从遥操作示范到可复现训练:LeRobot 0.6.1 的机器人学习工作流
人工智能·学习·机器人·开源·开发工具
IZero0713 小时前
Elasticsearch 学习笔记筑基-文档操作篇
笔记·学习·elasticsearch