awk print conditionsawk + print awk output in one lineawk with if statementsPrint lines between two patterns matching a condition in awkWant to print NULL if value is not present as awk outputawk: print one line per field-1 value (distinct) where difference “field-2 - field-3” is minimumusing division in awk scriptSelecting two sets of conditions in awkAWK to print lines matching to user input entered in some specific format, range etc
In Toy Story, are toys the only inanimate objects that become alive? And if so, why?
Can the inductive kick be discharged without a freewheeling diode, in this example?
Four day weekend?
What are ways to record who took the pictures if a camera is used by multiple people?
How smart contract transactions work?
How do I get my neighbour to stop disturbing with loud music?
Quick Tilepaint Puzzles: Corridors and Corners
Can UV radiation be safe for the skin?
How can I portray a character with no fear of death, without them sounding utterly bored?
Does Q ever actually lie?
Does using composite keys violate 2NF
Could a simple hospital oxygen mask protect from aerosol poison?
What is the motivation behind designing a control stick that does not move?
Calculate Landau's function
Can authors email you PDFs of their textbook for free?
Can I leave a large suitcase at TPE during a 4-hour layover, and pick it up 4.5 days later when I come back to TPE on my way to Taipei downtown?
Ideas behind the 8.Bd3 line in the 4.Ng5 Two Knights Defense
How can I improve my formal definitions?
Deck of Many Things. What happens if you don't declare any number of cards and just start drawing?
How to load files as a quickfix window at start-up
In what language did Túrin converse with Mím?
How would a disabled person earn their living in a medieval-type town?
'spazieren' - walking in a silly and affected manner?
awk print conditions
awk print conditions
awk + print awk output in one lineawk with if statementsPrint lines between two patterns matching a condition in awkWant to print NULL if value is not present as awk outputawk: print one line per field-1 value (distinct) where difference “field-2 - field-3” is minimumusing division in awk scriptSelecting two sets of conditions in awkAWK to print lines matching to user input entered in some specific format, range etc
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;
Trying to print lines with a condition, example -
input example
Hello:world
Hello:worlds:
Hello:world:example
attempt -
awk -F":" print $1 " + " $2 && if($3 != "") " + " $3
so expected output would be
Hello + world
Hello + worlds
Hello + world + example
awk
New contributor
add a comment |
Trying to print lines with a condition, example -
input example
Hello:world
Hello:worlds:
Hello:world:example
attempt -
awk -F":" print $1 " + " $2 && if($3 != "") " + " $3
so expected output would be
Hello + world
Hello + worlds
Hello + world + example
awk
New contributor
1
A little more prose would make sense.
– Cyrus
9 hours ago
Is it only the 3rd field that could possibly be empty, or do you want to delete all empty fields?
– Kusalananda♦
8 hours ago
add a comment |
Trying to print lines with a condition, example -
input example
Hello:world
Hello:worlds:
Hello:world:example
attempt -
awk -F":" print $1 " + " $2 && if($3 != "") " + " $3
so expected output would be
Hello + world
Hello + worlds
Hello + world + example
awk
New contributor
Trying to print lines with a condition, example -
input example
Hello:world
Hello:worlds:
Hello:world:example
attempt -
awk -F":" print $1 " + " $2 && if($3 != "") " + " $3
so expected output would be
Hello + world
Hello + worlds
Hello + world + example
awk
awk
New contributor
New contributor
edited 8 hours ago
Kusalananda♦
162k19 gold badges320 silver badges507 bronze badges
162k19 gold badges320 silver badges507 bronze badges
New contributor
asked 9 hours ago
user369557user369557
111 bronze badge
111 bronze badge
New contributor
New contributor
1
A little more prose would make sense.
– Cyrus
9 hours ago
Is it only the 3rd field that could possibly be empty, or do you want to delete all empty fields?
– Kusalananda♦
8 hours ago
add a comment |
1
A little more prose would make sense.
– Cyrus
9 hours ago
Is it only the 3rd field that could possibly be empty, or do you want to delete all empty fields?
– Kusalananda♦
8 hours ago
1
1
A little more prose would make sense.
– Cyrus
9 hours ago
A little more prose would make sense.
– Cyrus
9 hours ago
Is it only the 3rd field that could possibly be empty, or do you want to delete all empty fields?
– Kusalananda♦
8 hours ago
Is it only the 3rd field that could possibly be empty, or do you want to delete all empty fields?
– Kusalananda♦
8 hours ago
add a comment |
3 Answers
3
active
oldest
votes
If you only have to care about an empty last field, then using sed
would be shorter:
$ sed 's/:$//; s/:/ + /g' file
Hello + world
Hello + worlds
Hello + world + example
Your attempted awk
command can be salvaged like this:
$ awk -F":" ' print $1 " + " $2 ($3 != "" ? " + " $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
Or, by using OFS
(the output field delimiter):
$ awk -F":" -v OFS=' + ' ' print $1, $2 ($3 != "" ? OFS $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
add a comment |
If last column is empty, remove last column from output.
awk '$NF=="" NF-- $1=$11' FS=':' OFS=' + ' file
Output:
Hello + world
Hello + worlds
Hello + world + example
See: 8 Powerful Awk Built-in Variables – FS, OFS, RS, ORS, NR, NF, FILENAME, FNR
Note that the effect of decrementingNF
is undefined in the POSIX standard. It may work in some implementations ofawk
.
– Kusalananda♦
8 hours ago
add a comment |
sed "s/+$//g" file | sed "s/+/ /g"
add a comment |
Your Answer
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "106"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: false,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: null,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
user369557 is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f538484%2fawk-print-conditions%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
3 Answers
3
active
oldest
votes
3 Answers
3
active
oldest
votes
active
oldest
votes
active
oldest
votes
If you only have to care about an empty last field, then using sed
would be shorter:
$ sed 's/:$//; s/:/ + /g' file
Hello + world
Hello + worlds
Hello + world + example
Your attempted awk
command can be salvaged like this:
$ awk -F":" ' print $1 " + " $2 ($3 != "" ? " + " $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
Or, by using OFS
(the output field delimiter):
$ awk -F":" -v OFS=' + ' ' print $1, $2 ($3 != "" ? OFS $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
add a comment |
If you only have to care about an empty last field, then using sed
would be shorter:
$ sed 's/:$//; s/:/ + /g' file
Hello + world
Hello + worlds
Hello + world + example
Your attempted awk
command can be salvaged like this:
$ awk -F":" ' print $1 " + " $2 ($3 != "" ? " + " $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
Or, by using OFS
(the output field delimiter):
$ awk -F":" -v OFS=' + ' ' print $1, $2 ($3 != "" ? OFS $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
add a comment |
If you only have to care about an empty last field, then using sed
would be shorter:
$ sed 's/:$//; s/:/ + /g' file
Hello + world
Hello + worlds
Hello + world + example
Your attempted awk
command can be salvaged like this:
$ awk -F":" ' print $1 " + " $2 ($3 != "" ? " + " $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
Or, by using OFS
(the output field delimiter):
$ awk -F":" -v OFS=' + ' ' print $1, $2 ($3 != "" ? OFS $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
If you only have to care about an empty last field, then using sed
would be shorter:
$ sed 's/:$//; s/:/ + /g' file
Hello + world
Hello + worlds
Hello + world + example
Your attempted awk
command can be salvaged like this:
$ awk -F":" ' print $1 " + " $2 ($3 != "" ? " + " $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
Or, by using OFS
(the output field delimiter):
$ awk -F":" -v OFS=' + ' ' print $1, $2 ($3 != "" ? OFS $3 : "") ' file
Hello + world
Hello + worlds
Hello + world + example
edited 8 hours ago
answered 8 hours ago
Kusalananda♦Kusalananda
162k19 gold badges320 silver badges507 bronze badges
162k19 gold badges320 silver badges507 bronze badges
add a comment |
add a comment |
If last column is empty, remove last column from output.
awk '$NF=="" NF-- $1=$11' FS=':' OFS=' + ' file
Output:
Hello + world
Hello + worlds
Hello + world + example
See: 8 Powerful Awk Built-in Variables – FS, OFS, RS, ORS, NR, NF, FILENAME, FNR
Note that the effect of decrementingNF
is undefined in the POSIX standard. It may work in some implementations ofawk
.
– Kusalananda♦
8 hours ago
add a comment |
If last column is empty, remove last column from output.
awk '$NF=="" NF-- $1=$11' FS=':' OFS=' + ' file
Output:
Hello + world
Hello + worlds
Hello + world + example
See: 8 Powerful Awk Built-in Variables – FS, OFS, RS, ORS, NR, NF, FILENAME, FNR
Note that the effect of decrementingNF
is undefined in the POSIX standard. It may work in some implementations ofawk
.
– Kusalananda♦
8 hours ago
add a comment |
If last column is empty, remove last column from output.
awk '$NF=="" NF-- $1=$11' FS=':' OFS=' + ' file
Output:
Hello + world
Hello + worlds
Hello + world + example
See: 8 Powerful Awk Built-in Variables – FS, OFS, RS, ORS, NR, NF, FILENAME, FNR
If last column is empty, remove last column from output.
awk '$NF=="" NF-- $1=$11' FS=':' OFS=' + ' file
Output:
Hello + world
Hello + worlds
Hello + world + example
See: 8 Powerful Awk Built-in Variables – FS, OFS, RS, ORS, NR, NF, FILENAME, FNR
answered 8 hours ago
CyrusCyrus
7,9362 gold badges12 silver badges41 bronze badges
7,9362 gold badges12 silver badges41 bronze badges
Note that the effect of decrementingNF
is undefined in the POSIX standard. It may work in some implementations ofawk
.
– Kusalananda♦
8 hours ago
add a comment |
Note that the effect of decrementingNF
is undefined in the POSIX standard. It may work in some implementations ofawk
.
– Kusalananda♦
8 hours ago
Note that the effect of decrementing
NF
is undefined in the POSIX standard. It may work in some implementations of awk
.– Kusalananda♦
8 hours ago
Note that the effect of decrementing
NF
is undefined in the POSIX standard. It may work in some implementations of awk
.– Kusalananda♦
8 hours ago
add a comment |
sed "s/+$//g" file | sed "s/+/ /g"
add a comment |
sed "s/+$//g" file | sed "s/+/ /g"
add a comment |
sed "s/+$//g" file | sed "s/+/ /g"
sed "s/+$//g" file | sed "s/+/ /g"
answered 3 hours ago
Praveen Kumar BSPraveen Kumar BS
2,4222 gold badges3 silver badges11 bronze badges
2,4222 gold badges3 silver badges11 bronze badges
add a comment |
add a comment |
user369557 is a new contributor. Be nice, and check out our Code of Conduct.
user369557 is a new contributor. Be nice, and check out our Code of Conduct.
user369557 is a new contributor. Be nice, and check out our Code of Conduct.
user369557 is a new contributor. Be nice, and check out our Code of Conduct.
Thanks for contributing an answer to Unix & Linux Stack Exchange!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f538484%2fawk-print-conditions%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
1
A little more prose would make sense.
– Cyrus
9 hours ago
Is it only the 3rd field that could possibly be empty, or do you want to delete all empty fields?
– Kusalananda♦
8 hours ago