闲碎记事本 闲碎记事本
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

YAN

我要偷偷记录...
首页
  • JAVA
  • Cloudflare
  • 学完再改一遍UI
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • java

  • linux

    • Shell基础
      • OpenEuler系统JAVA部署问题
      • sshpass 使用
      • 固定机器ip
      • 一些可修改的系统设置
      • 服务自启
      • 一些查询命令
      • Swap空间
    • docker

    • redis

    • nginx

    • mysql

    • 其他

    • 环境搭建

    • 知识库
    • linux
    Yan
    2023-03-07
    目录

    Shell基础

    记录一下命令,持续更新

    # 文件开头

    声明解释器位置

    # 安全性较强写法
    #!/bin/sh
    
    # 适配性更强写法
    #!/usr/bin/env bash
    

    # 输出

    # 普通输出
    echo 你好
    
    # 格式化输出
    printf "%-10s %-8s %-4s\n" 姓名 性别 分数  
    printf "%-10s %-8s %-4.2f\n" 小婷 女  99.9
    printf "%-10s %-8s %-4.2f\n" 小家 男  59.9
    

    # 调试

    sh -x bash.sh
    

    # 比较

    # 数值比较

    参数 说明
    -eq 等于则为真
    -ne 不等于则为真
    -gt 大于则为真
    -ge 大于等于则为真
    -lt 小于则为真
    -le 小于等于则为真

    # 字符串比较

    参数 说明
    = 等于则为真
    != 不相等则为真
    -z 字符串 字符串的长度为零则为真
    -n 字符串 字符串的长度不为零则为真

    # 文件比较

    参数 说明
    -e 文件名 如果文件存在则为真
    -r 文件名 如果文件存在且可读则为真
    -w 文件名 如果文件存在且可写则为真
    -x 文件名 如果文件存在且可执行则为真
    -s 文件名 如果文件存在且至少有一个字符则为真
    -d 文件名 如果文件存在且为目录则为真
    -f 文件名 如果文件存在且为普通文件则为真
    -c 文件名 如果文件存在且为字符型特殊文件则为真
    -b 文件名 如果文件存在且为块特殊文件则为真

    # 判断

    # 只有if

    if test 1 -eq 1
    then
        echo '条件1'
    fi
    

    # if-else

    if test 1 -eq 1
    then
      echo '条件1'
    else 
      echo '条件2'
    fi
    

    # if-elseif-else

    if test 1 -eq 1
    then
      echo '条件1'
    elif 1 -eq 2
    then
      echo '条件2'
    else 
      echo '条件3'
    fi
    

    # 传递参数

    sh -x bash.sh 1,2,3
    

    # 获取参数

    $0 第一个参数
    $1 第二个参数
    $2 第三个参数
    

    # 变量及使用

    # 定义变量
    name=mediocre
    # 使用 ${}
    echo ${mediocre}
    # 或者是无边界写法
    echo $mediocre
    

    # 函数

    functionName(){
      echo  "这是一个方法"
    }
    

    # case

    sh ./bash.sh 男
    
    
    case "$1" in "男")
        echo  "男孩"
    ;;
    "女")
        echo  "女孩"
    esac
    
    上次更新: 2025/05/14, 01:34:05
    SSE示例
    OpenEuler系统JAVA部署问题

    ← SSE示例 OpenEuler系统JAVA部署问题→

    最近更新
    01
    Caddy操作指南
    04-25
    02
    Swap空间
    04-22
    03
    Alist使用
    04-21
    更多文章>
    Theme by Vdoing | Copyright © 2022-2025 YAN | MIT License
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式