Глобальный флаг p4 -x
позволяет передавать содержимое файла (или стандартный ввод как -
) команде p4
в качестве аргументов. Команда p4 edit
принимает произвольное количество аргументов файлов; команда p4 submit
будет работать со всеми открытыми файлами по умолчанию.
C:\Perforce\test\grep>p4 print ...
//stream/main/grep/bar#1 - add change 145 (text)
wibble
//stream/main/grep/baz#1 - add change 145 (text)
wibble
//stream/main/grep/foo#1 - add change 145 (text)
weeble
//stream/main/grep/ola#1 - add change 145 (text)
weeble
C:\Perforce\test\grep>grep -l weeble * | p4 -x- edit
//stream/main/grep/foo#1 - opened for edit
//stream/main/grep/ola#1 - opened for edit
C:\Perforce\test\grep>sed -i -e s/weeble/wobble/ *
C:\Perforce\test\grep>p4 diff
==== //stream/main/grep/foo#1 - c:\Perforce\test\grep\foo ====
1c1
< weeble
---
> wobble
==== //stream/main/grep/ola#1 - c:\Perforce\test\grep\ola ====
1c1
< weeble
---
> wobble
C:\Perforce\test\grep>p4 submit -d "weeble wobble"
Submitting change 146.
Locking 2 files ...
edit //stream/main/grep/foo#2
edit //stream/main/grep/ola#2
Change 146 submitted.
Обратите внимание, что команды p4 print
и p4 diff
в приведенном выше примере не являются необходимыми для отправки файлов; Я просто включил этот вывод, чтобы показать состояние файлов в этих точках процесса для понимания примера.