Linux
Bash腳本,從文件讀取並寫入其他文件
我有一個名為 3proxy 的代理伺服器。我需要像這樣添加ip:
flush auth iponly strong deny * * * 25,2525 * * * allow test proxy -n -a -i192.168.110.1 -e192.168.110.1 -p65233 socks -n -a -i192.168.110.1 -e192.168.110.1 -p65234
這是一個配置 3proxy 的塊。我需要在 3proxy 中添加更多 100 個具有不同 ip 的配置 3proxy 塊。我寫腳本:
if [ -f /root/ip ]; then for IP_IN_NGINX in `grep -v ^# /root/ip`; do cat > "/root/3proxy" <<END flush auth iponly strong deny * * * 25,2525 * * * allow test proxy -n -a -i$IP_IN_NGINX -e$IP_IN_NGINX -p65233 socks -n -a -i$IP_IN_NGINX -e$IP_IN_NGINX -p65234 END done fi
在 /root/ip 中,我有一個 IP 塊。在 /root/3proxy 我想用不同的 IP 編寫許多配置塊。當我啟動腳本時,我在輸出文件中有一個配置 3proxy 塊和一個 IP。但是我需要許多配置塊,這些配置塊與我的文件中的 IP 不同。我哪裡有錯誤?請幫忙。
你應該使用
>>
而不是>
!使用前者,您附加輸出(如果目標不存在,則創建),而使用後者覆蓋。