変数と数値を使用する Bash または条件文

変数と数値を使用する Bash または条件文

2つの変数$filetr_exec$filetr_dryrun。設定するかどうかに関係なく、配列に追加したいと思います--dry-run。これはどちらも設定されていますが、まだ。oserfiletr_dryrun == 1filetr_exec--dry-runoser

以下が必要ですが、変数と値の存在を確認する方法がわかりません。

if [[ -z $filetr_exec ]] || (( filetr_dryrun == 1 )); then
  oser+=( --dry-run )
fi

答え1

ilkkachuが言ったように、これはうまくいくはずです。

#!/bin/bash

filetr_exec="" #or 1
filetr_dryrun="" #or 1
oser=(--test)

if [[ -z "$filetr_exec" ]] || (( filetr_dryrun == 1 )); then
  oser+=( --dry-run )
fi

printf '%s\n' "${oser[@]}"

常に私に期待される値を印刷します。

関連情報