Why does my while loop ignore the condition and keep going forever?
I have the following bash script which is supposed to record temperature data of my 2 cpu cores and send it to a file until the file is 10000 lines long, however the 10000 line while loop condition is not doing anything and it keeps going past 10000 lines. Can anyone see why it would do that?
lc=`wc -l temps.log2 | grep -o '[0-9]*'`
while [ $lc -lt 10000 ]
do
sensors | grep ^Core |
(
DATE=$(date +%m/%d/%y-%H:%M:%S)
while read LINE
do
echo "$DATE $LINE"
done
) >> temps.log2
done
bash
add a comment |
I have the following bash script which is supposed to record temperature data of my 2 cpu cores and send it to a file until the file is 10000 lines long, however the 10000 line while loop condition is not doing anything and it keeps going past 10000 lines. Can anyone see why it would do that?
lc=`wc -l temps.log2 | grep -o '[0-9]*'`
while [ $lc -lt 10000 ]
do
sensors | grep ^Core |
(
DATE=$(date +%m/%d/%y-%H:%M:%S)
while read LINE
do
echo "$DATE $LINE"
done
) >> temps.log2
done
bash
add a comment |
I have the following bash script which is supposed to record temperature data of my 2 cpu cores and send it to a file until the file is 10000 lines long, however the 10000 line while loop condition is not doing anything and it keeps going past 10000 lines. Can anyone see why it would do that?
lc=`wc -l temps.log2 | grep -o '[0-9]*'`
while [ $lc -lt 10000 ]
do
sensors | grep ^Core |
(
DATE=$(date +%m/%d/%y-%H:%M:%S)
while read LINE
do
echo "$DATE $LINE"
done
) >> temps.log2
done
bash
I have the following bash script which is supposed to record temperature data of my 2 cpu cores and send it to a file until the file is 10000 lines long, however the 10000 line while loop condition is not doing anything and it keeps going past 10000 lines. Can anyone see why it would do that?
lc=`wc -l temps.log2 | grep -o '[0-9]*'`
while [ $lc -lt 10000 ]
do
sensors | grep ^Core |
(
DATE=$(date +%m/%d/%y-%H:%M:%S)
while read LINE
do
echo "$DATE $LINE"
done
) >> temps.log2
done
bash
bash
edited 1 hour ago
Rui F Ribeiro
39.6k1479132
39.6k1479132
asked Nov 26 '16 at 4:54
wes1099wes1099
2015
2015
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
$lc
isn't being incremented in the loop
wait, now it is sayingtemplogv2.sh: 2: [: 1: unexpected operator
and all i did was copy the first line and put it inside the while loop.
– wes1099
Nov 26 '16 at 5:49
im a moron again. my grep statement was returning more than what I wanted it to.
– wes1099
Nov 26 '16 at 6:06
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
});
}
});
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%2f326132%2fwhy-does-my-while-loop-ignore-the-condition-and-keep-going-forever%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
$lc
isn't being incremented in the loop
wait, now it is sayingtemplogv2.sh: 2: [: 1: unexpected operator
and all i did was copy the first line and put it inside the while loop.
– wes1099
Nov 26 '16 at 5:49
im a moron again. my grep statement was returning more than what I wanted it to.
– wes1099
Nov 26 '16 at 6:06
add a comment |
$lc
isn't being incremented in the loop
wait, now it is sayingtemplogv2.sh: 2: [: 1: unexpected operator
and all i did was copy the first line and put it inside the while loop.
– wes1099
Nov 26 '16 at 5:49
im a moron again. my grep statement was returning more than what I wanted it to.
– wes1099
Nov 26 '16 at 6:06
add a comment |
$lc
isn't being incremented in the loop
$lc
isn't being incremented in the loop
answered Nov 26 '16 at 5:06
John KerlJohn Kerl
1465
1465
wait, now it is sayingtemplogv2.sh: 2: [: 1: unexpected operator
and all i did was copy the first line and put it inside the while loop.
– wes1099
Nov 26 '16 at 5:49
im a moron again. my grep statement was returning more than what I wanted it to.
– wes1099
Nov 26 '16 at 6:06
add a comment |
wait, now it is sayingtemplogv2.sh: 2: [: 1: unexpected operator
and all i did was copy the first line and put it inside the while loop.
– wes1099
Nov 26 '16 at 5:49
im a moron again. my grep statement was returning more than what I wanted it to.
– wes1099
Nov 26 '16 at 6:06
wait, now it is saying
templogv2.sh: 2: [: 1: unexpected operator
and all i did was copy the first line and put it inside the while loop.– wes1099
Nov 26 '16 at 5:49
wait, now it is saying
templogv2.sh: 2: [: 1: unexpected operator
and all i did was copy the first line and put it inside the while loop.– wes1099
Nov 26 '16 at 5:49
im a moron again. my grep statement was returning more than what I wanted it to.
– wes1099
Nov 26 '16 at 6:06
im a moron again. my grep statement was returning more than what I wanted it to.
– wes1099
Nov 26 '16 at 6:06
add a comment |
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%2f326132%2fwhy-does-my-while-loop-ignore-the-condition-and-keep-going-forever%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