Why use cat to view a file? [on hold]Why is using a shell loop to process text considered bad practice?Is there ever a reason to use `cat` when you've got `less`?Using More or Less in this ScenarioHow to make “less” exit with clearing the screen?Is there ever a reason to use `cat` when you've got `less`?How to use `cat` or `less` depending on the line count?How can I get less or cat to use color in the output from .cat of my .bashrc, similar to vi 'ing it?Are `less textfile | col` and `cat textfile` the same?Can 'less -F' be usefully combined with termcap initialization?cat [file..] pipe another cat commandWhy is `sudo cat /tmp/1 > file` wrong?less file1 file2 | cat — why does it work?Why cat command doesn't use its command environment?How to make “less” exit with clearing the screen?
What are the advantages and disadvantages of running one shots compared to campaigns?
Can I find out the caloric content of bread by dehydrating it?
Does a dangling wire really electrocute me if I'm standing in water?
Information to fellow intern about hiring?
How can I fix this gap between bookcases I made?
Was there ever an axiom rendered a theorem?
What is the meaning of "of trouble" in the following sentence?
LWC and complex parameters
COUNT(*) or MAX(id) - which is faster?
Filling an area between two curves
Unbreakable Formation vs. Cry of the Carnarium
Need help identifying/translating a plaque in Tangier, Morocco
How to manage monthly salary
When blogging recipes, how can I support both readers who want the narrative/journey and ones who want the printer-friendly recipe?
What do the Banks children have against barley water?
Shall I use personal or official e-mail account when registering to external websites for work purpose?
Is "plugging out" electronic devices an American expression?
Lied on resume at previous job
Domain expired, GoDaddy holds it and is asking more money
Why did the Germans forbid the possession of pet pigeons in Rostov-on-Don in 1941?
Is Social Media Science Fiction?
Is this food a bread or a loaf?
Is window.confirm() accessible?
What does 'script /dev/null' do?
Why use cat to view a file? [on hold]
Why is using a shell loop to process text considered bad practice?Is there ever a reason to use `cat` when you've got `less`?Using More or Less in this ScenarioHow to make “less” exit with clearing the screen?Is there ever a reason to use `cat` when you've got `less`?How to use `cat` or `less` depending on the line count?How can I get less or cat to use color in the output from .cat of my .bashrc, similar to vi 'ing it?Are `less textfile | col` and `cat textfile` the same?Can 'less -F' be usefully combined with termcap initialization?cat [file..] pipe another cat commandWhy is `sudo cat /tmp/1 > file` wrong?less file1 file2 | cat — why does it work?Why cat command doesn't use its command environment?How to make “less” exit with clearing the screen?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
It seems that the purpose of cat
is to concatenate several files. However, many people still use cat
instead of less
(or a similar program like more
) to display a file. See, for example, the GNU m4 manual.
Man page: less
-F or --quit-if-one-screen
Causes
less
to automatically exit if the entire file can be displayed on the first screen.
-X or --no-init
Disables sending the termcap initialization and deinitialization strings to the terminal. This is sometimes desirable if the deinitialization string does something unnecessary, like clearing the screen.
Nowadays, is it a good practice to use cat
to display or view a file? Why use cat
to view a file?
This makes me think to Useless Use Of Cat.
Note: This question is not about the differences between less
and more
. Moreover, it concerns the visualization of a file created earlier.
text-processing cat less
put on hold as primarily opinion-based by muru, Prvt_Yadv, roaima, Stephen Harris, Vlastimil 12 hours ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
|
show 6 more comments
It seems that the purpose of cat
is to concatenate several files. However, many people still use cat
instead of less
(or a similar program like more
) to display a file. See, for example, the GNU m4 manual.
Man page: less
-F or --quit-if-one-screen
Causes
less
to automatically exit if the entire file can be displayed on the first screen.
-X or --no-init
Disables sending the termcap initialization and deinitialization strings to the terminal. This is sometimes desirable if the deinitialization string does something unnecessary, like clearing the screen.
Nowadays, is it a good practice to use cat
to display or view a file? Why use cat
to view a file?
This makes me think to Useless Use Of Cat.
Note: This question is not about the differences between less
and more
. Moreover, it concerns the visualization of a file created earlier.
text-processing cat less
put on hold as primarily opinion-based by muru, Prvt_Yadv, roaima, Stephen Harris, Vlastimil 12 hours ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
5
If you know a file isn't that large,cat
is easier: how many keystrokes do you need to typecat
vs.less -F
?
– wurtel
16 hours ago
3
And withcat
you can continue your work in the same terminal and the output is still visible to lookup something, copy & paste etc.
– Freddy
16 hours ago
3
This question is going to generate a lot of personal opinion and blatant speculation, and little in the way of documented analyses or facts. Plus lengthy back and forth in comments of things that we already have questions and answers about, such as unix.stackexchange.com/q/463102/5132 and unix.stackexchange.com/q/21548/5132 .
– JdeBP
16 hours ago
1
I need an additional-X
, otherwise I don't see anything for small files...
– RoVo
15 hours ago
2
@Kusalananda: In general, c.f. GNU M4 manual.
– Fólkvangr
14 hours ago
|
show 6 more comments
It seems that the purpose of cat
is to concatenate several files. However, many people still use cat
instead of less
(or a similar program like more
) to display a file. See, for example, the GNU m4 manual.
Man page: less
-F or --quit-if-one-screen
Causes
less
to automatically exit if the entire file can be displayed on the first screen.
-X or --no-init
Disables sending the termcap initialization and deinitialization strings to the terminal. This is sometimes desirable if the deinitialization string does something unnecessary, like clearing the screen.
Nowadays, is it a good practice to use cat
to display or view a file? Why use cat
to view a file?
This makes me think to Useless Use Of Cat.
Note: This question is not about the differences between less
and more
. Moreover, it concerns the visualization of a file created earlier.
text-processing cat less
It seems that the purpose of cat
is to concatenate several files. However, many people still use cat
instead of less
(or a similar program like more
) to display a file. See, for example, the GNU m4 manual.
Man page: less
-F or --quit-if-one-screen
Causes
less
to automatically exit if the entire file can be displayed on the first screen.
-X or --no-init
Disables sending the termcap initialization and deinitialization strings to the terminal. This is sometimes desirable if the deinitialization string does something unnecessary, like clearing the screen.
Nowadays, is it a good practice to use cat
to display or view a file? Why use cat
to view a file?
This makes me think to Useless Use Of Cat.
Note: This question is not about the differences between less
and more
. Moreover, it concerns the visualization of a file created earlier.
text-processing cat less
text-processing cat less
edited 11 hours ago
Fólkvangr
asked 16 hours ago
FólkvangrFólkvangr
34014
34014
put on hold as primarily opinion-based by muru, Prvt_Yadv, roaima, Stephen Harris, Vlastimil 12 hours ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
put on hold as primarily opinion-based by muru, Prvt_Yadv, roaima, Stephen Harris, Vlastimil 12 hours ago
Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise. If this question can be reworded to fit the rules in the help center, please edit the question.
5
If you know a file isn't that large,cat
is easier: how many keystrokes do you need to typecat
vs.less -F
?
– wurtel
16 hours ago
3
And withcat
you can continue your work in the same terminal and the output is still visible to lookup something, copy & paste etc.
– Freddy
16 hours ago
3
This question is going to generate a lot of personal opinion and blatant speculation, and little in the way of documented analyses or facts. Plus lengthy back and forth in comments of things that we already have questions and answers about, such as unix.stackexchange.com/q/463102/5132 and unix.stackexchange.com/q/21548/5132 .
– JdeBP
16 hours ago
1
I need an additional-X
, otherwise I don't see anything for small files...
– RoVo
15 hours ago
2
@Kusalananda: In general, c.f. GNU M4 manual.
– Fólkvangr
14 hours ago
|
show 6 more comments
5
If you know a file isn't that large,cat
is easier: how many keystrokes do you need to typecat
vs.less -F
?
– wurtel
16 hours ago
3
And withcat
you can continue your work in the same terminal and the output is still visible to lookup something, copy & paste etc.
– Freddy
16 hours ago
3
This question is going to generate a lot of personal opinion and blatant speculation, and little in the way of documented analyses or facts. Plus lengthy back and forth in comments of things that we already have questions and answers about, such as unix.stackexchange.com/q/463102/5132 and unix.stackexchange.com/q/21548/5132 .
– JdeBP
16 hours ago
1
I need an additional-X
, otherwise I don't see anything for small files...
– RoVo
15 hours ago
2
@Kusalananda: In general, c.f. GNU M4 manual.
– Fólkvangr
14 hours ago
5
5
If you know a file isn't that large,
cat
is easier: how many keystrokes do you need to type cat
vs. less -F
?– wurtel
16 hours ago
If you know a file isn't that large,
cat
is easier: how many keystrokes do you need to type cat
vs. less -F
?– wurtel
16 hours ago
3
3
And with
cat
you can continue your work in the same terminal and the output is still visible to lookup something, copy & paste etc.– Freddy
16 hours ago
And with
cat
you can continue your work in the same terminal and the output is still visible to lookup something, copy & paste etc.– Freddy
16 hours ago
3
3
This question is going to generate a lot of personal opinion and blatant speculation, and little in the way of documented analyses or facts. Plus lengthy back and forth in comments of things that we already have questions and answers about, such as unix.stackexchange.com/q/463102/5132 and unix.stackexchange.com/q/21548/5132 .
– JdeBP
16 hours ago
This question is going to generate a lot of personal opinion and blatant speculation, and little in the way of documented analyses or facts. Plus lengthy back and forth in comments of things that we already have questions and answers about, such as unix.stackexchange.com/q/463102/5132 and unix.stackexchange.com/q/21548/5132 .
– JdeBP
16 hours ago
1
1
I need an additional
-X
, otherwise I don't see anything for small files...– RoVo
15 hours ago
I need an additional
-X
, otherwise I don't see anything for small files...– RoVo
15 hours ago
2
2
@Kusalananda: In general, c.f. GNU M4 manual.
– Fólkvangr
14 hours ago
@Kusalananda: In general, c.f. GNU M4 manual.
– Fólkvangr
14 hours ago
|
show 6 more comments
4 Answers
4
active
oldest
votes
I'm going to assume that the "many people" in the question refers to people writing tutorials, manuals, or answers on web-sites such as this one.
When writing terminal commands in a text document, the cat
command is commonly used to show the contents of a file.
An example of this:
$ cat script.sh
#!/bin/sh
echo 'hello'
$ chmod +x script.sh
$ ./script.sh
hello
Here, I show that I have a file called script.sh
, what its contents is, that I'm making it executable and that I'm running it and what the result of that is.
Using cat
in this example is just a way of "showing all one's cards", i.e. to explicitly display all the prerequisites for an example (and doing it as part of a textual representation of a terminal session).
less
and other screen based pagers, depending on how they are used, would not necessarily give that output in the terminal. So if I wrote
$ less script.sh
#!/bin/sh
echo 'hello'
and a user tried it by themselves, they may wonder why the text of the script appears different in their terminal and then disappears from the terminal once they closed the less
pager (if that's the way they've configured the pager), or whether their less
is different from the less
used in the answer (or tutorial or whatever it may be), or if they're doing something else wrong. Allowing for the possibility of this train of thought is counterproductive and disruptive for the user.
Using cat
when showing an example in the terminal as text is good as it gives a fairly easy way of reproducing the exact same results as in the given text. For larger files, it may be better to show the file separately, and then concentrate on how that file is used when writing the terminal command as text.
If you prefer to use less
, more
, most
, view
, sublime
, or some other pager or program to view files, that's totally fine. Go ahead and do that. But if you want to provide a reproducible text describing some workflow in the terminal, you would have to also give the user a warning that the output may differ between what they read and what they see in their own terminal, depending on what pager is used and how it's configured.
In my opinion, the reader should be informed as you say in your answer; e.g. usingcat
to display a file: why does this text disappear on the screen?.
– Fólkvangr
13 hours ago
@Fólkvangr the writers of the articles/answers have no idea about the skill level of the person reading the answer. Depending on what the context is, this could be someone brand new and they don't know anything. Lot's of people just google answers and follow line by line without fully understanding. By making it easier for the audience, the writer ensures no ambiguity or further questions, like where did the text go.
– SaggingRufus
13 hours ago
add a comment |
less
is a non-standard GNU utility.
cat
is POSIX:
The Open Group Base Specifications Issue 7, 2018 edition
IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)
Copyright © 2001-2018 IEEE and The Open Group
NAME
cat - concatenate and print files
SYNOPSIS
cat [-u] [file...]
...
cat
is more likely to exist and to have consistent behavior.
3
That argument rather falls over when it turns out that so too ismore
. (-:
– JdeBP
16 hours ago
2
@JdeBP True, but the question refers toless
quite specifically, relegatingmore
to a footnote - literally. I'm also pretty sure that footnote wasn't in the original posting (edits made in the first few minutes don't show).
– Andrew Henle
16 hours ago
@JdeBP Exceptmore
does not have the additional functionality ofless
and still requires more keystrokes, and different commands/function keys, to do things. There are several ways to do almost EVERYTHING in *NIX. Often there is no single "correct" way of doing it (all things being equal). Now, if you need a method that does not spawn additional processes, or have other esoteric limitations, then certainly the ability to do things multiple ways is good.
– 0xSheepdog
15 hours ago
The question is not asking about additional functionality, and as even M. Henle acknowledges, explicitly includesmore
in what it is asking about. An argument that only thecat
program in the question is standard falls over because it isn't true. It's as simple as that. Remember where I wrote about comment discussions that address things that we already have Q&As about? Here you are doing it. Read unix.stackexchange.com/a/333946/5132 and unix.stackexchange.com/a/340511/5132 for starters.
– JdeBP
15 hours ago
1
So, more is more standard, less is less standard, and more has more functionality than cat. but more has less functionality than less.
– Mark Plotnick
12 hours ago
|
show 1 more comment
IMHO, I guess it's an "old / bad" habit. Myself, I always use cat because I do not think about less that is more suitable.
If you try to display the contents of a binary file, less asks if you agree to display it anyway and automatically paginates a text when it is long.
Cat is short to write and is easy to use for very short files that do not require paging.
Nevertheless, it is indeed intended for concatenation. In this case, used to display text, it performs a concatenation on the standard output of the file given in argument 1 and the standard input which is the default of argument 2.
New contributor
1
I'm with you, but I don't feel there is anything "bad" about the habit. Purely a preference thing, given the other reasons that have also been listed.
– 0xSheepdog
15 hours ago
The user can typeless
and useexport LESS=-FX
oralias less='less -FX'
in its shell initialization file. These options allow to display a file likecat
.
– Fólkvangr
14 hours ago
@Fólkvangr: not a good idea when you need to work on a lot of systems.
– RoVo
14 hours ago
add a comment |
is it a good practice to use cat to display or view a file?
IMO, it's neither good nor bad.
"Good practice" is whatever makes you more effective as an individual and, what is often more important, it's whatever makes you a more effective member of some team.
Your preference for what tool you use to view short text files is not likely to affect your work or, how you get along with your co-workers.
New contributor
I mean that some tools are used incorrectly, c.f. unix.stackexchange.com/q/169716/286944.sed
anded
seem similar but have probably different uses.
– Fólkvangr
10 hours ago
add a comment |
4 Answers
4
active
oldest
votes
4 Answers
4
active
oldest
votes
active
oldest
votes
active
oldest
votes
I'm going to assume that the "many people" in the question refers to people writing tutorials, manuals, or answers on web-sites such as this one.
When writing terminal commands in a text document, the cat
command is commonly used to show the contents of a file.
An example of this:
$ cat script.sh
#!/bin/sh
echo 'hello'
$ chmod +x script.sh
$ ./script.sh
hello
Here, I show that I have a file called script.sh
, what its contents is, that I'm making it executable and that I'm running it and what the result of that is.
Using cat
in this example is just a way of "showing all one's cards", i.e. to explicitly display all the prerequisites for an example (and doing it as part of a textual representation of a terminal session).
less
and other screen based pagers, depending on how they are used, would not necessarily give that output in the terminal. So if I wrote
$ less script.sh
#!/bin/sh
echo 'hello'
and a user tried it by themselves, they may wonder why the text of the script appears different in their terminal and then disappears from the terminal once they closed the less
pager (if that's the way they've configured the pager), or whether their less
is different from the less
used in the answer (or tutorial or whatever it may be), or if they're doing something else wrong. Allowing for the possibility of this train of thought is counterproductive and disruptive for the user.
Using cat
when showing an example in the terminal as text is good as it gives a fairly easy way of reproducing the exact same results as in the given text. For larger files, it may be better to show the file separately, and then concentrate on how that file is used when writing the terminal command as text.
If you prefer to use less
, more
, most
, view
, sublime
, or some other pager or program to view files, that's totally fine. Go ahead and do that. But if you want to provide a reproducible text describing some workflow in the terminal, you would have to also give the user a warning that the output may differ between what they read and what they see in their own terminal, depending on what pager is used and how it's configured.
In my opinion, the reader should be informed as you say in your answer; e.g. usingcat
to display a file: why does this text disappear on the screen?.
– Fólkvangr
13 hours ago
@Fólkvangr the writers of the articles/answers have no idea about the skill level of the person reading the answer. Depending on what the context is, this could be someone brand new and they don't know anything. Lot's of people just google answers and follow line by line without fully understanding. By making it easier for the audience, the writer ensures no ambiguity or further questions, like where did the text go.
– SaggingRufus
13 hours ago
add a comment |
I'm going to assume that the "many people" in the question refers to people writing tutorials, manuals, or answers on web-sites such as this one.
When writing terminal commands in a text document, the cat
command is commonly used to show the contents of a file.
An example of this:
$ cat script.sh
#!/bin/sh
echo 'hello'
$ chmod +x script.sh
$ ./script.sh
hello
Here, I show that I have a file called script.sh
, what its contents is, that I'm making it executable and that I'm running it and what the result of that is.
Using cat
in this example is just a way of "showing all one's cards", i.e. to explicitly display all the prerequisites for an example (and doing it as part of a textual representation of a terminal session).
less
and other screen based pagers, depending on how they are used, would not necessarily give that output in the terminal. So if I wrote
$ less script.sh
#!/bin/sh
echo 'hello'
and a user tried it by themselves, they may wonder why the text of the script appears different in their terminal and then disappears from the terminal once they closed the less
pager (if that's the way they've configured the pager), or whether their less
is different from the less
used in the answer (or tutorial or whatever it may be), or if they're doing something else wrong. Allowing for the possibility of this train of thought is counterproductive and disruptive for the user.
Using cat
when showing an example in the terminal as text is good as it gives a fairly easy way of reproducing the exact same results as in the given text. For larger files, it may be better to show the file separately, and then concentrate on how that file is used when writing the terminal command as text.
If you prefer to use less
, more
, most
, view
, sublime
, or some other pager or program to view files, that's totally fine. Go ahead and do that. But if you want to provide a reproducible text describing some workflow in the terminal, you would have to also give the user a warning that the output may differ between what they read and what they see in their own terminal, depending on what pager is used and how it's configured.
In my opinion, the reader should be informed as you say in your answer; e.g. usingcat
to display a file: why does this text disappear on the screen?.
– Fólkvangr
13 hours ago
@Fólkvangr the writers of the articles/answers have no idea about the skill level of the person reading the answer. Depending on what the context is, this could be someone brand new and they don't know anything. Lot's of people just google answers and follow line by line without fully understanding. By making it easier for the audience, the writer ensures no ambiguity or further questions, like where did the text go.
– SaggingRufus
13 hours ago
add a comment |
I'm going to assume that the "many people" in the question refers to people writing tutorials, manuals, or answers on web-sites such as this one.
When writing terminal commands in a text document, the cat
command is commonly used to show the contents of a file.
An example of this:
$ cat script.sh
#!/bin/sh
echo 'hello'
$ chmod +x script.sh
$ ./script.sh
hello
Here, I show that I have a file called script.sh
, what its contents is, that I'm making it executable and that I'm running it and what the result of that is.
Using cat
in this example is just a way of "showing all one's cards", i.e. to explicitly display all the prerequisites for an example (and doing it as part of a textual representation of a terminal session).
less
and other screen based pagers, depending on how they are used, would not necessarily give that output in the terminal. So if I wrote
$ less script.sh
#!/bin/sh
echo 'hello'
and a user tried it by themselves, they may wonder why the text of the script appears different in their terminal and then disappears from the terminal once they closed the less
pager (if that's the way they've configured the pager), or whether their less
is different from the less
used in the answer (or tutorial or whatever it may be), or if they're doing something else wrong. Allowing for the possibility of this train of thought is counterproductive and disruptive for the user.
Using cat
when showing an example in the terminal as text is good as it gives a fairly easy way of reproducing the exact same results as in the given text. For larger files, it may be better to show the file separately, and then concentrate on how that file is used when writing the terminal command as text.
If you prefer to use less
, more
, most
, view
, sublime
, or some other pager or program to view files, that's totally fine. Go ahead and do that. But if you want to provide a reproducible text describing some workflow in the terminal, you would have to also give the user a warning that the output may differ between what they read and what they see in their own terminal, depending on what pager is used and how it's configured.
I'm going to assume that the "many people" in the question refers to people writing tutorials, manuals, or answers on web-sites such as this one.
When writing terminal commands in a text document, the cat
command is commonly used to show the contents of a file.
An example of this:
$ cat script.sh
#!/bin/sh
echo 'hello'
$ chmod +x script.sh
$ ./script.sh
hello
Here, I show that I have a file called script.sh
, what its contents is, that I'm making it executable and that I'm running it and what the result of that is.
Using cat
in this example is just a way of "showing all one's cards", i.e. to explicitly display all the prerequisites for an example (and doing it as part of a textual representation of a terminal session).
less
and other screen based pagers, depending on how they are used, would not necessarily give that output in the terminal. So if I wrote
$ less script.sh
#!/bin/sh
echo 'hello'
and a user tried it by themselves, they may wonder why the text of the script appears different in their terminal and then disappears from the terminal once they closed the less
pager (if that's the way they've configured the pager), or whether their less
is different from the less
used in the answer (or tutorial or whatever it may be), or if they're doing something else wrong. Allowing for the possibility of this train of thought is counterproductive and disruptive for the user.
Using cat
when showing an example in the terminal as text is good as it gives a fairly easy way of reproducing the exact same results as in the given text. For larger files, it may be better to show the file separately, and then concentrate on how that file is used when writing the terminal command as text.
If you prefer to use less
, more
, most
, view
, sublime
, or some other pager or program to view files, that's totally fine. Go ahead and do that. But if you want to provide a reproducible text describing some workflow in the terminal, you would have to also give the user a warning that the output may differ between what they read and what they see in their own terminal, depending on what pager is used and how it's configured.
edited 13 hours ago
answered 14 hours ago
Kusalananda♦Kusalananda
140k17261435
140k17261435
In my opinion, the reader should be informed as you say in your answer; e.g. usingcat
to display a file: why does this text disappear on the screen?.
– Fólkvangr
13 hours ago
@Fólkvangr the writers of the articles/answers have no idea about the skill level of the person reading the answer. Depending on what the context is, this could be someone brand new and they don't know anything. Lot's of people just google answers and follow line by line without fully understanding. By making it easier for the audience, the writer ensures no ambiguity or further questions, like where did the text go.
– SaggingRufus
13 hours ago
add a comment |
In my opinion, the reader should be informed as you say in your answer; e.g. usingcat
to display a file: why does this text disappear on the screen?.
– Fólkvangr
13 hours ago
@Fólkvangr the writers of the articles/answers have no idea about the skill level of the person reading the answer. Depending on what the context is, this could be someone brand new and they don't know anything. Lot's of people just google answers and follow line by line without fully understanding. By making it easier for the audience, the writer ensures no ambiguity or further questions, like where did the text go.
– SaggingRufus
13 hours ago
In my opinion, the reader should be informed as you say in your answer; e.g. using
cat
to display a file: why does this text disappear on the screen?.– Fólkvangr
13 hours ago
In my opinion, the reader should be informed as you say in your answer; e.g. using
cat
to display a file: why does this text disappear on the screen?.– Fólkvangr
13 hours ago
@Fólkvangr the writers of the articles/answers have no idea about the skill level of the person reading the answer. Depending on what the context is, this could be someone brand new and they don't know anything. Lot's of people just google answers and follow line by line without fully understanding. By making it easier for the audience, the writer ensures no ambiguity or further questions, like where did the text go.
– SaggingRufus
13 hours ago
@Fólkvangr the writers of the articles/answers have no idea about the skill level of the person reading the answer. Depending on what the context is, this could be someone brand new and they don't know anything. Lot's of people just google answers and follow line by line without fully understanding. By making it easier for the audience, the writer ensures no ambiguity or further questions, like where did the text go.
– SaggingRufus
13 hours ago
add a comment |
less
is a non-standard GNU utility.
cat
is POSIX:
The Open Group Base Specifications Issue 7, 2018 edition
IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)
Copyright © 2001-2018 IEEE and The Open Group
NAME
cat - concatenate and print files
SYNOPSIS
cat [-u] [file...]
...
cat
is more likely to exist and to have consistent behavior.
3
That argument rather falls over when it turns out that so too ismore
. (-:
– JdeBP
16 hours ago
2
@JdeBP True, but the question refers toless
quite specifically, relegatingmore
to a footnote - literally. I'm also pretty sure that footnote wasn't in the original posting (edits made in the first few minutes don't show).
– Andrew Henle
16 hours ago
@JdeBP Exceptmore
does not have the additional functionality ofless
and still requires more keystrokes, and different commands/function keys, to do things. There are several ways to do almost EVERYTHING in *NIX. Often there is no single "correct" way of doing it (all things being equal). Now, if you need a method that does not spawn additional processes, or have other esoteric limitations, then certainly the ability to do things multiple ways is good.
– 0xSheepdog
15 hours ago
The question is not asking about additional functionality, and as even M. Henle acknowledges, explicitly includesmore
in what it is asking about. An argument that only thecat
program in the question is standard falls over because it isn't true. It's as simple as that. Remember where I wrote about comment discussions that address things that we already have Q&As about? Here you are doing it. Read unix.stackexchange.com/a/333946/5132 and unix.stackexchange.com/a/340511/5132 for starters.
– JdeBP
15 hours ago
1
So, more is more standard, less is less standard, and more has more functionality than cat. but more has less functionality than less.
– Mark Plotnick
12 hours ago
|
show 1 more comment
less
is a non-standard GNU utility.
cat
is POSIX:
The Open Group Base Specifications Issue 7, 2018 edition
IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)
Copyright © 2001-2018 IEEE and The Open Group
NAME
cat - concatenate and print files
SYNOPSIS
cat [-u] [file...]
...
cat
is more likely to exist and to have consistent behavior.
3
That argument rather falls over when it turns out that so too ismore
. (-:
– JdeBP
16 hours ago
2
@JdeBP True, but the question refers toless
quite specifically, relegatingmore
to a footnote - literally. I'm also pretty sure that footnote wasn't in the original posting (edits made in the first few minutes don't show).
– Andrew Henle
16 hours ago
@JdeBP Exceptmore
does not have the additional functionality ofless
and still requires more keystrokes, and different commands/function keys, to do things. There are several ways to do almost EVERYTHING in *NIX. Often there is no single "correct" way of doing it (all things being equal). Now, if you need a method that does not spawn additional processes, or have other esoteric limitations, then certainly the ability to do things multiple ways is good.
– 0xSheepdog
15 hours ago
The question is not asking about additional functionality, and as even M. Henle acknowledges, explicitly includesmore
in what it is asking about. An argument that only thecat
program in the question is standard falls over because it isn't true. It's as simple as that. Remember where I wrote about comment discussions that address things that we already have Q&As about? Here you are doing it. Read unix.stackexchange.com/a/333946/5132 and unix.stackexchange.com/a/340511/5132 for starters.
– JdeBP
15 hours ago
1
So, more is more standard, less is less standard, and more has more functionality than cat. but more has less functionality than less.
– Mark Plotnick
12 hours ago
|
show 1 more comment
less
is a non-standard GNU utility.
cat
is POSIX:
The Open Group Base Specifications Issue 7, 2018 edition
IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)
Copyright © 2001-2018 IEEE and The Open Group
NAME
cat - concatenate and print files
SYNOPSIS
cat [-u] [file...]
...
cat
is more likely to exist and to have consistent behavior.
less
is a non-standard GNU utility.
cat
is POSIX:
The Open Group Base Specifications Issue 7, 2018 edition
IEEE Std 1003.1-2017 (Revision of IEEE Std 1003.1-2008)
Copyright © 2001-2018 IEEE and The Open Group
NAME
cat - concatenate and print files
SYNOPSIS
cat [-u] [file...]
...
cat
is more likely to exist and to have consistent behavior.
answered 16 hours ago
Andrew HenleAndrew Henle
2,847911
2,847911
3
That argument rather falls over when it turns out that so too ismore
. (-:
– JdeBP
16 hours ago
2
@JdeBP True, but the question refers toless
quite specifically, relegatingmore
to a footnote - literally. I'm also pretty sure that footnote wasn't in the original posting (edits made in the first few minutes don't show).
– Andrew Henle
16 hours ago
@JdeBP Exceptmore
does not have the additional functionality ofless
and still requires more keystrokes, and different commands/function keys, to do things. There are several ways to do almost EVERYTHING in *NIX. Often there is no single "correct" way of doing it (all things being equal). Now, if you need a method that does not spawn additional processes, or have other esoteric limitations, then certainly the ability to do things multiple ways is good.
– 0xSheepdog
15 hours ago
The question is not asking about additional functionality, and as even M. Henle acknowledges, explicitly includesmore
in what it is asking about. An argument that only thecat
program in the question is standard falls over because it isn't true. It's as simple as that. Remember where I wrote about comment discussions that address things that we already have Q&As about? Here you are doing it. Read unix.stackexchange.com/a/333946/5132 and unix.stackexchange.com/a/340511/5132 for starters.
– JdeBP
15 hours ago
1
So, more is more standard, less is less standard, and more has more functionality than cat. but more has less functionality than less.
– Mark Plotnick
12 hours ago
|
show 1 more comment
3
That argument rather falls over when it turns out that so too ismore
. (-:
– JdeBP
16 hours ago
2
@JdeBP True, but the question refers toless
quite specifically, relegatingmore
to a footnote - literally. I'm also pretty sure that footnote wasn't in the original posting (edits made in the first few minutes don't show).
– Andrew Henle
16 hours ago
@JdeBP Exceptmore
does not have the additional functionality ofless
and still requires more keystrokes, and different commands/function keys, to do things. There are several ways to do almost EVERYTHING in *NIX. Often there is no single "correct" way of doing it (all things being equal). Now, if you need a method that does not spawn additional processes, or have other esoteric limitations, then certainly the ability to do things multiple ways is good.
– 0xSheepdog
15 hours ago
The question is not asking about additional functionality, and as even M. Henle acknowledges, explicitly includesmore
in what it is asking about. An argument that only thecat
program in the question is standard falls over because it isn't true. It's as simple as that. Remember where I wrote about comment discussions that address things that we already have Q&As about? Here you are doing it. Read unix.stackexchange.com/a/333946/5132 and unix.stackexchange.com/a/340511/5132 for starters.
– JdeBP
15 hours ago
1
So, more is more standard, less is less standard, and more has more functionality than cat. but more has less functionality than less.
– Mark Plotnick
12 hours ago
3
3
That argument rather falls over when it turns out that so too is
more
. (-:– JdeBP
16 hours ago
That argument rather falls over when it turns out that so too is
more
. (-:– JdeBP
16 hours ago
2
2
@JdeBP True, but the question refers to
less
quite specifically, relegating more
to a footnote - literally. I'm also pretty sure that footnote wasn't in the original posting (edits made in the first few minutes don't show).– Andrew Henle
16 hours ago
@JdeBP True, but the question refers to
less
quite specifically, relegating more
to a footnote - literally. I'm also pretty sure that footnote wasn't in the original posting (edits made in the first few minutes don't show).– Andrew Henle
16 hours ago
@JdeBP Except
more
does not have the additional functionality of less
and still requires more keystrokes, and different commands/function keys, to do things. There are several ways to do almost EVERYTHING in *NIX. Often there is no single "correct" way of doing it (all things being equal). Now, if you need a method that does not spawn additional processes, or have other esoteric limitations, then certainly the ability to do things multiple ways is good.– 0xSheepdog
15 hours ago
@JdeBP Except
more
does not have the additional functionality of less
and still requires more keystrokes, and different commands/function keys, to do things. There are several ways to do almost EVERYTHING in *NIX. Often there is no single "correct" way of doing it (all things being equal). Now, if you need a method that does not spawn additional processes, or have other esoteric limitations, then certainly the ability to do things multiple ways is good.– 0xSheepdog
15 hours ago
The question is not asking about additional functionality, and as even M. Henle acknowledges, explicitly includes
more
in what it is asking about. An argument that only the cat
program in the question is standard falls over because it isn't true. It's as simple as that. Remember where I wrote about comment discussions that address things that we already have Q&As about? Here you are doing it. Read unix.stackexchange.com/a/333946/5132 and unix.stackexchange.com/a/340511/5132 for starters.– JdeBP
15 hours ago
The question is not asking about additional functionality, and as even M. Henle acknowledges, explicitly includes
more
in what it is asking about. An argument that only the cat
program in the question is standard falls over because it isn't true. It's as simple as that. Remember where I wrote about comment discussions that address things that we already have Q&As about? Here you are doing it. Read unix.stackexchange.com/a/333946/5132 and unix.stackexchange.com/a/340511/5132 for starters.– JdeBP
15 hours ago
1
1
So, more is more standard, less is less standard, and more has more functionality than cat. but more has less functionality than less.
– Mark Plotnick
12 hours ago
So, more is more standard, less is less standard, and more has more functionality than cat. but more has less functionality than less.
– Mark Plotnick
12 hours ago
|
show 1 more comment
IMHO, I guess it's an "old / bad" habit. Myself, I always use cat because I do not think about less that is more suitable.
If you try to display the contents of a binary file, less asks if you agree to display it anyway and automatically paginates a text when it is long.
Cat is short to write and is easy to use for very short files that do not require paging.
Nevertheless, it is indeed intended for concatenation. In this case, used to display text, it performs a concatenation on the standard output of the file given in argument 1 and the standard input which is the default of argument 2.
New contributor
1
I'm with you, but I don't feel there is anything "bad" about the habit. Purely a preference thing, given the other reasons that have also been listed.
– 0xSheepdog
15 hours ago
The user can typeless
and useexport LESS=-FX
oralias less='less -FX'
in its shell initialization file. These options allow to display a file likecat
.
– Fólkvangr
14 hours ago
@Fólkvangr: not a good idea when you need to work on a lot of systems.
– RoVo
14 hours ago
add a comment |
IMHO, I guess it's an "old / bad" habit. Myself, I always use cat because I do not think about less that is more suitable.
If you try to display the contents of a binary file, less asks if you agree to display it anyway and automatically paginates a text when it is long.
Cat is short to write and is easy to use for very short files that do not require paging.
Nevertheless, it is indeed intended for concatenation. In this case, used to display text, it performs a concatenation on the standard output of the file given in argument 1 and the standard input which is the default of argument 2.
New contributor
1
I'm with you, but I don't feel there is anything "bad" about the habit. Purely a preference thing, given the other reasons that have also been listed.
– 0xSheepdog
15 hours ago
The user can typeless
and useexport LESS=-FX
oralias less='less -FX'
in its shell initialization file. These options allow to display a file likecat
.
– Fólkvangr
14 hours ago
@Fólkvangr: not a good idea when you need to work on a lot of systems.
– RoVo
14 hours ago
add a comment |
IMHO, I guess it's an "old / bad" habit. Myself, I always use cat because I do not think about less that is more suitable.
If you try to display the contents of a binary file, less asks if you agree to display it anyway and automatically paginates a text when it is long.
Cat is short to write and is easy to use for very short files that do not require paging.
Nevertheless, it is indeed intended for concatenation. In this case, used to display text, it performs a concatenation on the standard output of the file given in argument 1 and the standard input which is the default of argument 2.
New contributor
IMHO, I guess it's an "old / bad" habit. Myself, I always use cat because I do not think about less that is more suitable.
If you try to display the contents of a binary file, less asks if you agree to display it anyway and automatically paginates a text when it is long.
Cat is short to write and is easy to use for very short files that do not require paging.
Nevertheless, it is indeed intended for concatenation. In this case, used to display text, it performs a concatenation on the standard output of the file given in argument 1 and the standard input which is the default of argument 2.
New contributor
New contributor
answered 16 hours ago
PhLinuXPhLinuX
365
365
New contributor
New contributor
1
I'm with you, but I don't feel there is anything "bad" about the habit. Purely a preference thing, given the other reasons that have also been listed.
– 0xSheepdog
15 hours ago
The user can typeless
and useexport LESS=-FX
oralias less='less -FX'
in its shell initialization file. These options allow to display a file likecat
.
– Fólkvangr
14 hours ago
@Fólkvangr: not a good idea when you need to work on a lot of systems.
– RoVo
14 hours ago
add a comment |
1
I'm with you, but I don't feel there is anything "bad" about the habit. Purely a preference thing, given the other reasons that have also been listed.
– 0xSheepdog
15 hours ago
The user can typeless
and useexport LESS=-FX
oralias less='less -FX'
in its shell initialization file. These options allow to display a file likecat
.
– Fólkvangr
14 hours ago
@Fólkvangr: not a good idea when you need to work on a lot of systems.
– RoVo
14 hours ago
1
1
I'm with you, but I don't feel there is anything "bad" about the habit. Purely a preference thing, given the other reasons that have also been listed.
– 0xSheepdog
15 hours ago
I'm with you, but I don't feel there is anything "bad" about the habit. Purely a preference thing, given the other reasons that have also been listed.
– 0xSheepdog
15 hours ago
The user can type
less
and use export LESS=-FX
or alias less='less -FX'
in its shell initialization file. These options allow to display a file like cat
.– Fólkvangr
14 hours ago
The user can type
less
and use export LESS=-FX
or alias less='less -FX'
in its shell initialization file. These options allow to display a file like cat
.– Fólkvangr
14 hours ago
@Fólkvangr: not a good idea when you need to work on a lot of systems.
– RoVo
14 hours ago
@Fólkvangr: not a good idea when you need to work on a lot of systems.
– RoVo
14 hours ago
add a comment |
is it a good practice to use cat to display or view a file?
IMO, it's neither good nor bad.
"Good practice" is whatever makes you more effective as an individual and, what is often more important, it's whatever makes you a more effective member of some team.
Your preference for what tool you use to view short text files is not likely to affect your work or, how you get along with your co-workers.
New contributor
I mean that some tools are used incorrectly, c.f. unix.stackexchange.com/q/169716/286944.sed
anded
seem similar but have probably different uses.
– Fólkvangr
10 hours ago
add a comment |
is it a good practice to use cat to display or view a file?
IMO, it's neither good nor bad.
"Good practice" is whatever makes you more effective as an individual and, what is often more important, it's whatever makes you a more effective member of some team.
Your preference for what tool you use to view short text files is not likely to affect your work or, how you get along with your co-workers.
New contributor
I mean that some tools are used incorrectly, c.f. unix.stackexchange.com/q/169716/286944.sed
anded
seem similar but have probably different uses.
– Fólkvangr
10 hours ago
add a comment |
is it a good practice to use cat to display or view a file?
IMO, it's neither good nor bad.
"Good practice" is whatever makes you more effective as an individual and, what is often more important, it's whatever makes you a more effective member of some team.
Your preference for what tool you use to view short text files is not likely to affect your work or, how you get along with your co-workers.
New contributor
is it a good practice to use cat to display or view a file?
IMO, it's neither good nor bad.
"Good practice" is whatever makes you more effective as an individual and, what is often more important, it's whatever makes you a more effective member of some team.
Your preference for what tool you use to view short text files is not likely to affect your work or, how you get along with your co-workers.
New contributor
edited 12 hours ago
New contributor
answered 13 hours ago
Solomon SlowSolomon Slow
1314
1314
New contributor
New contributor
I mean that some tools are used incorrectly, c.f. unix.stackexchange.com/q/169716/286944.sed
anded
seem similar but have probably different uses.
– Fólkvangr
10 hours ago
add a comment |
I mean that some tools are used incorrectly, c.f. unix.stackexchange.com/q/169716/286944.sed
anded
seem similar but have probably different uses.
– Fólkvangr
10 hours ago
I mean that some tools are used incorrectly, c.f. unix.stackexchange.com/q/169716/286944.
sed
and ed
seem similar but have probably different uses.– Fólkvangr
10 hours ago
I mean that some tools are used incorrectly, c.f. unix.stackexchange.com/q/169716/286944.
sed
and ed
seem similar but have probably different uses.– Fólkvangr
10 hours ago
add a comment |
5
If you know a file isn't that large,
cat
is easier: how many keystrokes do you need to typecat
vs.less -F
?– wurtel
16 hours ago
3
And with
cat
you can continue your work in the same terminal and the output is still visible to lookup something, copy & paste etc.– Freddy
16 hours ago
3
This question is going to generate a lot of personal opinion and blatant speculation, and little in the way of documented analyses or facts. Plus lengthy back and forth in comments of things that we already have questions and answers about, such as unix.stackexchange.com/q/463102/5132 and unix.stackexchange.com/q/21548/5132 .
– JdeBP
16 hours ago
1
I need an additional
-X
, otherwise I don't see anything for small files...– RoVo
15 hours ago
2
@Kusalananda: In general, c.f. GNU M4 manual.
– Fólkvangr
14 hours ago