Linux学习9----shell

shell

操作系统与程序之间的解释器

shell脚本

  • Window中 *.bat
  • Linux 中 *.sh

规则

  • 都是bash解释执行
  • 第一行开始两个字符永远是 #!,称为Shebang,Unix系统中程序会按指令解析文件
  • 默认使用$SHELL去解析
#!/bin/sh 开头,代表以bash解释器去执行
#!/usr/bin/python 开头,代表以Python解释器去执行
#!/usr/bin/env 开头,解释器名称,不同平台里在环境变量中自动寻找合适的解释器去执行

开发规范

  • 指定解释器
  • 作者时间等备注,备注一般不用中文
  • 代码功能注释

执行方式

  • bash script.sh 无需权限

    source script.sh
    . script.sh
    bash script.sh
    
  • 使用 绝对路径/相对路径 必须有权限

脚本语言

shell是一种弱类型语言,无需定义变量类型

命令

history  #查看历史记录
  -c:清空内存中命令历史
  -r:从文件中恢复命令历史

$HISTSIZE  #shell进程可保存的最大历史记录
~/.bash_history #历史记录文件

!n #调用第n条历史记录
!! #调用上一次历史记录
!String #匹配String的命令
posted @   shog808  阅读(3)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示