tell(3tcl)

tell3tcl

Return current access position for an open channel

Usage

tell channelId


    


    


    

Overview

Returns an integer string giving the current access position in channelId. This value returned is a byte offset that can be passed to seek in order to set the channel to a particular position. Note that this value is in terms of bytes, not characters like read. The value returned is -1 for channels that do not support seeking.

ChannelId must be an identifier for an open channel such as a Tcl standard channel (stdin, stdout, or stderr), the return value from an invocation of open or socket, or the result of a channel creation command provided by a Tcl extension.

Examples

Read a line from a file channel only if it starts with foobar:

# Save the offset in case we need to undo the read...
set offset [tell $chan]
if {[read $chan 6] eq "foobar"} {
    gets $chan line
} else {
    set line {}
    # Undo the read...
    seek $chan $offset
}

Keywords

access position, channel, seeking

Releases

18 releases since Debian 1.1 (Buzz); the text changed 10 times.

  1. 1.1–1.3
  2. 2.0
  3. 2.1
  4. 2.2
  5. 3.0–4.0
  6. 5.0
  7. 6.0
  8. 7
  9. 8–9
  10. 10
  11. 11–13

From tcl8.6-doc 8.6.16+dfsg-1 in Debian 13 (Trixie). Also shipped by tcl9.0-doc. Parsed by carta from the page's man source.