0
我試圖讓一個bash腳本調用帶有可選參數的python腳本。 當這個參數相關時,它必須提供一個前綴標誌(例如-o "value"
)。bash無法將包含空間的參數傳遞給外部腳本
由於該值包含空格,因此我在其中加入了引號。但是,在這個用例中,,它不是有效的。
任何黑客可以解決它嗎?
test.py
#!/usr/bin/env python
import argparse
def main():
parser = argparse.ArgumentParser()
parser.add_argument('-o', '--options', default='', type=str, required=False)
args = parser.parse_args()
print args.options
if __name__ == '__main__':
main()
tests.sh
#!/bin/bash
export options="A B C"
export extra_args=""
if [ -n "${options}" ]; then
export extra_args="${extra_args} -o \"${options}\""
fi
./tests.py $extra_args