2013-08-22 106 views
0

我期待創造一個bash腳本打印出一些額外的變量的文本文件,請參見下面打印文件出在bash

我想有這樣的一個文本文件,它

bot1 
bot2 
bot3 

,然後有一個bash腳本把它打印出來,像這樣

--exclude-agent="bot1" --exclude-agent="bot2" --exclude-agent="bot3" 

這可能嗎?所以,如果我添加另一行到第一個文件,它將只打印另一個--exclude-agent =「我在文件中放入的任何文件」

目前我已經得到了下面的結果,但沒有相當我想要的

#!/bin/bash 
while read line 
do 
echo "--exclude-agent="$line" \\" 
done < bots.txt 

任何幫助將是偉大的!

+0

http://mywiki.wooledge.org/XyProblem –

回答

0

這取決於你的意思是

不完全是我想要

首先,你有引用問題。正確的方法是

echo "--exclude-agent=$line \\" 

如果你想打印在同一行上嘗試

echo -n "--exclude-agent=$line" 

如果你想保持在一個變量試試這個代碼

params='' 
while read -r line 
do 
    params+="--exclude-agent=$line " 
done < bots.txt 
printf '%s\n' "$params" 

而且似乎就像你試圖將參數存儲在一個變量中一樣。 Which is the worst idea ever

0

echo -n "--exclude-agent="$line"-n不打印最後\n從而使所有選項都在同一行

0

打印出預期的輸出:

echo "--exclude-agent="\"$line"\" "