How to compare to a character in if else statement











up vote
0
down vote

favorite












I am comparing 2 datas using sdiff and would like to send the output of to a if else loop to generate lines. Mainly printing "Data Not Scheduled" if < or > is present and "Data Scheduled" otherwise. My script is as follows;



sdiff -b cleanAntDiff cleanGSCDiff > mergeData

if [$mergeData -eq "<"]
then
echo -e "Data Not Scheduled"
else
echo -e "Data Scheduled"
fi









share|improve this question









New contributor




Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
















  • 5




    Well, there are a few issues. (1) You always have to have whitespace (one or more spaces or tabs) after [ and before ]. (2) You should always quote variables (e.g., "$mergeData") unless you have a good reason not to, and you’re sure you know what you’re doing. (3) You should use = to compare characters (strings); -eq is only for comparing numbers. … (Cont’d)
    – Scott
    Nov 16 at 2:38






  • 6




    (Cont’d) …  But the biggest problem is that you create mergeData as a file, and then you treat it as a variable. Beyond that, I’m not sure what you’re trying to accomplish.  Are you trying to test whether the two files are identical?  If so, use cmp.  Are you trying to test whether the sdiff output contains a < or a >?  Look at grep.  But please learn to state your objective unambiguously.
    – Scott
    Nov 16 at 2:38















up vote
0
down vote

favorite












I am comparing 2 datas using sdiff and would like to send the output of to a if else loop to generate lines. Mainly printing "Data Not Scheduled" if < or > is present and "Data Scheduled" otherwise. My script is as follows;



sdiff -b cleanAntDiff cleanGSCDiff > mergeData

if [$mergeData -eq "<"]
then
echo -e "Data Not Scheduled"
else
echo -e "Data Scheduled"
fi









share|improve this question









New contributor




Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
















  • 5




    Well, there are a few issues. (1) You always have to have whitespace (one or more spaces or tabs) after [ and before ]. (2) You should always quote variables (e.g., "$mergeData") unless you have a good reason not to, and you’re sure you know what you’re doing. (3) You should use = to compare characters (strings); -eq is only for comparing numbers. … (Cont’d)
    – Scott
    Nov 16 at 2:38






  • 6




    (Cont’d) …  But the biggest problem is that you create mergeData as a file, and then you treat it as a variable. Beyond that, I’m not sure what you’re trying to accomplish.  Are you trying to test whether the two files are identical?  If so, use cmp.  Are you trying to test whether the sdiff output contains a < or a >?  Look at grep.  But please learn to state your objective unambiguously.
    – Scott
    Nov 16 at 2:38













up vote
0
down vote

favorite









up vote
0
down vote

favorite











I am comparing 2 datas using sdiff and would like to send the output of to a if else loop to generate lines. Mainly printing "Data Not Scheduled" if < or > is present and "Data Scheduled" otherwise. My script is as follows;



sdiff -b cleanAntDiff cleanGSCDiff > mergeData

if [$mergeData -eq "<"]
then
echo -e "Data Not Scheduled"
else
echo -e "Data Scheduled"
fi









share|improve this question









New contributor




Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











I am comparing 2 datas using sdiff and would like to send the output of to a if else loop to generate lines. Mainly printing "Data Not Scheduled" if < or > is present and "Data Scheduled" otherwise. My script is as follows;



sdiff -b cleanAntDiff cleanGSCDiff > mergeData

if [$mergeData -eq "<"]
then
echo -e "Data Not Scheduled"
else
echo -e "Data Scheduled"
fi






linux shell-script shell






share|improve this question









New contributor




Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.











share|improve this question









New contributor




Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









share|improve this question




share|improve this question








edited Nov 16 at 2:22









Rui F Ribeiro

38.2k1475123




38.2k1475123






New contributor




Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.









asked Nov 16 at 2:13









Bhara

1




1




New contributor




Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.





New contributor





Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.






Bhara is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.








  • 5




    Well, there are a few issues. (1) You always have to have whitespace (one or more spaces or tabs) after [ and before ]. (2) You should always quote variables (e.g., "$mergeData") unless you have a good reason not to, and you’re sure you know what you’re doing. (3) You should use = to compare characters (strings); -eq is only for comparing numbers. … (Cont’d)
    – Scott
    Nov 16 at 2:38






  • 6




    (Cont’d) …  But the biggest problem is that you create mergeData as a file, and then you treat it as a variable. Beyond that, I’m not sure what you’re trying to accomplish.  Are you trying to test whether the two files are identical?  If so, use cmp.  Are you trying to test whether the sdiff output contains a < or a >?  Look at grep.  But please learn to state your objective unambiguously.
    – Scott
    Nov 16 at 2:38














  • 5




    Well, there are a few issues. (1) You always have to have whitespace (one or more spaces or tabs) after [ and before ]. (2) You should always quote variables (e.g., "$mergeData") unless you have a good reason not to, and you’re sure you know what you’re doing. (3) You should use = to compare characters (strings); -eq is only for comparing numbers. … (Cont’d)
    – Scott
    Nov 16 at 2:38






  • 6




    (Cont’d) …  But the biggest problem is that you create mergeData as a file, and then you treat it as a variable. Beyond that, I’m not sure what you’re trying to accomplish.  Are you trying to test whether the two files are identical?  If so, use cmp.  Are you trying to test whether the sdiff output contains a < or a >?  Look at grep.  But please learn to state your objective unambiguously.
    – Scott
    Nov 16 at 2:38








5




5




Well, there are a few issues. (1) You always have to have whitespace (one or more spaces or tabs) after [ and before ]. (2) You should always quote variables (e.g., "$mergeData") unless you have a good reason not to, and you’re sure you know what you’re doing. (3) You should use = to compare characters (strings); -eq is only for comparing numbers. … (Cont’d)
– Scott
Nov 16 at 2:38




Well, there are a few issues. (1) You always have to have whitespace (one or more spaces or tabs) after [ and before ]. (2) You should always quote variables (e.g., "$mergeData") unless you have a good reason not to, and you’re sure you know what you’re doing. (3) You should use = to compare characters (strings); -eq is only for comparing numbers. … (Cont’d)
– Scott
Nov 16 at 2:38




6




6




(Cont’d) …  But the biggest problem is that you create mergeData as a file, and then you treat it as a variable. Beyond that, I’m not sure what you’re trying to accomplish.  Are you trying to test whether the two files are identical?  If so, use cmp.  Are you trying to test whether the sdiff output contains a < or a >?  Look at grep.  But please learn to state your objective unambiguously.
– Scott
Nov 16 at 2:38




(Cont’d) …  But the biggest problem is that you create mergeData as a file, and then you treat it as a variable. Beyond that, I’m not sure what you’re trying to accomplish.  Are you trying to test whether the two files are identical?  If so, use cmp.  Are you trying to test whether the sdiff output contains a < or a >?  Look at grep.  But please learn to state your objective unambiguously.
– Scott
Nov 16 at 2:38















active

oldest

votes











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',
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
});


}
});






Bhara is a new contributor. Be nice, and check out our Code of Conduct.










 

draft saved


draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f482068%2fhow-to-compare-to-a-character-in-if-else-statement%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown






























active

oldest

votes













active

oldest

votes









active

oldest

votes






active

oldest

votes








Bhara is a new contributor. Be nice, and check out our Code of Conduct.










 

draft saved


draft discarded


















Bhara is a new contributor. Be nice, and check out our Code of Conduct.













Bhara is a new contributor. Be nice, and check out our Code of Conduct.












Bhara is a new contributor. Be nice, and check out our Code of Conduct.















 


draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2funix.stackexchange.com%2fquestions%2f482068%2fhow-to-compare-to-a-character-in-if-else-statement%23new-answer', 'question_page');
}
);

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







Popular posts from this blog

Morgemoulin

Scott Moir

Souastre