Shell Unix:如何用另一个文件中的每个字符串替换模式
我有一个名为Shell Unix:如何用另一个文件中的每个字符串替换模式,shell,unix,command-line,Shell,Unix,Command Line,我有一个名为fileA的文件,包含 comA comB comC for bp in `pgrep REPLACE_IT`; do echo 1 > /proc/REPLACE_IT/oom_adj echo 1 > /proc/$bp/oom_score_adj done 2>/dev/null 然后是另一个名为fileB的文件,其中包含 comA comB comC for bp in `pgrep REPLACE_IT`; do echo 1 > /proc/
fileA
的文件,包含
comA comB comC
for bp in `pgrep REPLACE_IT`;
do
echo 1 > /proc/REPLACE_IT/oom_adj
echo 1 > /proc/$bp/oom_score_adj
done 2>/dev/null
然后是另一个名为fileB
的文件,其中包含
comA comB comC
for bp in `pgrep REPLACE_IT`;
do
echo 1 > /proc/REPLACE_IT/oom_adj
echo 1 > /proc/$bp/oom_score_adj
done 2>/dev/null
如何用fileA
中的每个单词替换fileB
中的每个单词,然后将结果打印到fileC
文件C中所需的输出:
for bp in `pgrep comA`;
do
echo 1 > /proc/comA/oom_adj
echo 1 > /proc/$bp/oom_score_adj
done 2>/dev/null
for bp in `pgrep comB`;
do
echo 1 > /proc/comB/oom_adj
echo 1 > /proc/$bp/oom_score_adj
done 2>/dev/null
for bp in `pgrep comC`;
do
echo 1 > /proc/comC/oom_adj
echo 1 > /proc/$bp/oom_score_adj
done 2>/dev/null
谢谢你的建议像这样的东西能奏效吗
for i in $(cat fileA); do
sed 's|REPLACE_IT|'$i'|g' <fileB >temp
cat temp >> fileC
done
以美元为单位的i的(cat文件a);做
sed的|替换|它|‘$i’| g’温度
cat temp>>文件C
完成
你的技巧几乎接近我的目标,我只是稍微适应了我的目标。你救了我一天