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

相关推荐
YMWM_2 分钟前
python-venv虚拟环境
linux·开发语言·python
不负岁月无痕18 分钟前
STL -- C++ 红黑树封装 Map 和 Set
java·c语言·开发语言·c++·面试
小园子的小菜22 分钟前
Java核心基础:反射与泛型底层原理及实战用法详解
java·开发语言
十五年专注C++开发1 小时前
C++之std::numeric_limits介绍
开发语言·c++·limits
2501_925963381 小时前
Hi3516 + WS73 SDIO Wi-Fi 适配笔记
java·开发语言
CoderYanger1 小时前
视频切割脚本(Python版)
linux·开发语言·windows·后端·python·程序人生·职场和发展
辞旧 lekkk1 小时前
CMake工程指南(一)
linux·运维·服务器·开发语言·qt·学习·萌新
小七在进步1 小时前
数据结构:用栈实现队列
开发语言·数据结构
KaMeidebaby1 小时前
卡梅德生物技术快报|噬菌体筛选:噬菌体筛选工程化优化方案:基于侵染全链条参数调控与水环境应用验证
java·开发语言·人工智能·机器学习·spark
geovindu1 小时前
go: Floyd-Warshall Algorithms
开发语言·后端·算法·golang