Wenn Sie die Umleitung innerhalb des Befehls für verwenden parallel
, müssen Sie {}
die Eingabe an die richtige Stelle setzen, als Parameter für sed
:
echo "$z" | parallel 'sed "s/\(^3.*3\)/\13/" {} > {//}/result.txt'
Wenn {//}
(oder eine andere Ersatzzeichenfolge) verwendet wird, parallel
hängt die Eingabe außerdem nicht automatisch am Ende des Befehls an. (In diesem Fall wäre das ohnehin falsch, wie es nach der Umleitung der Fall wäre.)
Im Wesentlichen wird der Code in der Frage ausgeführt
sed "s/(^3.*3\)/\13/" > ./result.txt
aber es muss sein
sed "s/(^3.*3\)/\13/" ./input.txt > ./result.txt