我正在尝试在 bash 中编写一个脚本,每 2 秒读取一个文件file1
并写入另一个文件file2
,这很简单。
但是,我想file2
逐行写入或使用分隔符。
例如:
File1 = Some text goes in here
我想file2
每2秒写入第一个单词Some
,但只写入一次,2秒后写入第二个单词,依此类推,直到结束file1
。
答案1
我会将分隔符转换为新行以实现“逐行基础”或者分隔符”,例如:
脚本:
echo -e "foo:bar\nbaz" > myfile
i=0
while read -r foo; do
echo $i $foo
i=$((i += 1))
done < <(cat myfile | tr ':' '\n')
输出:
0 foo
1 bar
2 baz
答案2
一个 python 脚本示例,您可以从其中开始编写所需的脚本,从第一个文件中读取单词并打印到 stdout,但您可以打开另一个文件并在那里写入
#!/usr/bin/python
import time
File = open("words", "r")
Wordlist = File.readline().split()
n = 0
while True:
time.sleep(2)
print "File2 = " + Wordlist[n] #you can change this
n = n + 1
if n == Wordlist.__len__():
break