1

私は(うまくいけば)単純な問題を抱えていますが、それはあまり成功せずに解決しようとしてきました。次の簡単なシェルスクリプトについて考えてみます。

list = "AB C"

for i in $ scriptsdo//いくつかのロジックが実行されました

エコー$リスト

上記の例からの望ましい出力は次のとおりです。

右-A右-B右-C

4

2 に答える 2

1

追加の引数が指定された場合にフォーマットを再利用するprintf機能を使用して活用してください。

# specifically, do not quote the variable so that 
# the shell can split it into words
printf "right-%s " $list

# the printf command does not emit a newline, so 
# do it here
echo

bash を想定して、新しい変数としてキャプチャするには:

printf -v prefixed_list "right-%s " $list
于 2013-01-25T00:10:56.707 に答える
1

あなたの質問は理解できたと思いますが、100% 明確ではありません。ただし、BASH をシェルとして使用することをお勧めします。そして、あなたが求めている出力を作成するために私がすることは次のとおりです。

#!/bin/bash
LIST=(A B C)
for VALUE in "${LIST[@]}"
do
  echo 'right-'${VALUE}
done
于 2013-01-24T05:32:33.140 に答える