GNU bug report logs -
#66411
sed --debug option prints the contents of the hold space after running the 'g' command
Previous Next
Full log
View this message in rfc822 format
The 'g' command "[r]eplace[s] the contents of the pattern space with
the contents of the hold space." Outputting the contents of the hold
space then gives you the contents of the pattern space, but it still
doesn't make a lot of sense to do. It's not the hold space that was
updated. It's the pattern space.
$ seq 3 | sed --binary --regexp-extended --debug --expression='x; g; h'
SED PROGRAM:
x
g
h
INPUT: 'STDIN' line 1
PATTERN: 1
COMMAND: x
PATTERN:
HOLD: 1
COMMAND: g
HOLD: 1
COMMAND: h
HOLD: 1
END-OF-CYCLE:
1
INPUT: 'STDIN' line 2
PATTERN: 2
COMMAND: x
PATTERN: 1
HOLD: 2
COMMAND: g
HOLD: 2
COMMAND: h
HOLD: 2
END-OF-CYCLE:
2
INPUT: 'STDIN' line 3
PATTERN: 3
COMMAND: x
PATTERN: 2
HOLD: 3
COMMAND: g
HOLD: 3
COMMAND: h
HOLD: 3
END-OF-CYCLE:
3
'x' updates both pattern and hold spaces, and you get the contents of
both in the debugging output. 'h' updates the hold space, and you get
the contents of the hold space in the debugging output. 'g' updates
the pattern space, and you get the contents of the hold space in the
debugging output.
$ sed --version
sed (GNU sed) 4.9
[...]
$ pacman --query sed
sed 4.9-1
Being run in MSYS2 MINGW64 terminal on Windows 10.
Thanks,
Zack
This bug report was last modified 1 year and 244 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.