作为一个例子,我试图捕获以下脚本输出的原始命令:
https://github.com/adampointer/go-deribit/blob/master/scripts/generate-models.sh
我试图遵循先前的答案:
BASH: echoing the last command run
但是我得到的输出如下:
last command is gojson -forcefloats -name="${struct}" -tags=json,mapstructure -pkg=${p} >> models/${p}/${name%.*}_request.go
我想做的是捕获原始命令,换句话说,将${struct}
,${p}
和${p}/${name%.*}
之类的变量替换为使用的实际值。
我该怎么做?
答案 0 :(得分:2)
在#!/usr/bin/env bash
或#!/bin/bash
(如果有)之后的脚本顶部添加set -x
set -x在执行命令时打印命令及其参数
答案 1 :(得分:0)
以调试模式运行脚本,该脚本将跟踪脚本https://stackoverflow.com/a/10107170/988525中的所有命令。
您可以通过键入“ bash generate-models.sh -x”来执行此操作,而无需编辑脚本。