less, type s then type the file name you want to save to, then Enter.
man page, under
s filename Save the input to a file. This only works if the input is a pipe, not an ordinary file.
man page also states that, depending on your particular installation, the
s command might not be available. In that case, you could go to line 1 with:
g or < or ESC-< Go to line N in the file, default 1 (beginning of file).
and pipe the whole content to
| <m> shell-command <m> represents any mark letter. Pipes a section of the input file to the given shell command. The section of the file to be piped is between the first line on the current screen and the position marked by the letter. <m> may also be ^ or $ to indicate beginning or end of file respectively.
g|$cat > filename
<|$cat > filename
i.e. type g or < (g or less-than) | $ (pipe then dollar) then
cat > filename and Enter.
This should work whether input is a pipe or an ordinary file.
One way to do it without
tee is as follows.
less /path/to/input > /path/to/output
The above will overwrite
/path/to/output if it already exists.
To do the same, but append to
/path/to/output is as follows.
less /path/to/input >> /path/to/output
To save the text in
less after you have opened it, you can use the Save File feature.
s. Then, type the file name.
If you used a pipe, the file will automatically be written to Working Directory.
If you did not use a pipe, you will open a file with the text (for which you can save).
I believe the file will be opened in
You don’t use less, you use tee and then pipe tee to less.
./program | tee program.out | less