我正在写一个小的bash脚本,我编译了两个程序,然后在bash脚本的后台执行它们。这两个程序确实输出了一些通用文本。但是我需要在这些输出前面加上前缀,比如PROGRAM1: xxxxx
。我该怎么做呢?我在这里找到了几个答案,但是它们并不完全适用于这种情况。
代码如下:
#!/bin/bash
echo "This program compiles 2 programs, executes them (executes the 2nd one first, then sleeps for 0.01 second which then executes program 1), then observes the outputs"
gcc -O3 -std=c11 one.c -o one
gcc -O3 -std=c11 two.c -o two
./two &
sleep 0.01
TWO_PID=$(pgrep two)
./one $TWO_PID
#"Prefix output statements here"
#add code here
#Cleanup
rm -f one two
1条答案
按热度按时间vmpqdwk31#
你可以这样做
您不需要休眠,但要小心,因为
pgrep
可能匹配多个进程。此外,您应该使用
make
,而不是编译和移除。