Bash调试方法

1、安装插件(Bash Debug)

2、写launch.json

json 复制代码
{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "bashdb",
      "request": "launch",
      "name": "Debug Shell Script",
      "program": "${file}",
      "args": ["-t", "rk3588", "-a", "aarch64", "-d", "yolov8"],
      "cwd": "${workspaceFolder}",
      "pathBash": "/bin/bash",
      // "pathBashdb": "/usr/bin/bashdb",
      "terminalKind": "integrated"
    }
  ]
}

3、shell的常用语法

echo

shell 复制代码
echo 'hello shell' 单引号原样输出,不解析
echo "hello shell" 双引号解析变量
echo "hello ${name}"
echo "hello:$1"  输出第一个参数 
echo "$name"
echo "${name}"
echo "当前目录:$(pwd)"  ()是命令   {}是变量

if

json 复制代码
if [ 命令 ]; then    # []左右都要有空格
	命令1
fi

# [[]] 更高级更安全
1、不需要给变量添加""也不容易报错
2、支持 && || 直接写到里面
3、支持> < 比较字符串
if [[$a -gt 10 && $a -It 30 ]];then
	echo "ok"
fi 

[-f file] # 是否普通文件
[-d dir]  # 是否目录
[-e file] # 是否存在
[-z ${name}]  # 字符串长度为0

exit -1

相关推荐
LDR0064 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术4 天前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园4 天前
C++20 Modules 模块详解
java·开发语言·spring
swordbob4 天前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享4 天前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.4 天前
C语言--day30
c语言·开发语言
何以解忧,唯有..4 天前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽4 天前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下4 天前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
飞天狗1114 天前
零基础JavaWeb入门——第五课第二小节:九大内置对象 · 第2个:response(响应对象)
java·开发语言