我有一个echo函数,从random.txt
输出一个随机行echo $var4 | sed -n $((1+$RANDOM%`wc -l random.txt | cut -f 1 -d ' '`))p random.txt
每次echo $ var4都会给出random.txt文件的随机行
现在我有另一个文件playlist.txt
在我设置的文件播放列表中
a=$random
b=$random
c=$random
d=$random
依旧......
我想要的是用动态回声的不同输出替换a,b,c,d上的$ random
我试过
sed -i s/'$random'/$echo $var4 | sed -n $((1+$RANDOM%`wc -l random.txt | cut -f 1 -d ' '`))p random.txt/ playlist.txt
但它不起作用,
任何建议?
答案 0 :(得分:0)
cat <<'HEAD' > playlist.txt
<?xml version="1.0" encoding="UTF-8"?>
<smil title="liveongroup">
<head></head>
<body>
<stream name="liveongroup"></stream>
<playlist name="default rotation" playOnStream="liveongroup" repeat="true" scheduled="2015-08-28 09:38:00">
HEAD
shuf random.txt | sed -e 's/^/<video length="-1" src="mp4:/' \
-e 's/$/" start="0"><\/video>/' >> playlist.txt
echo "</playlist></body></smil>" >> playlist.txt