Oh, if you're outputting for a projector I would definitely recommend putting a video splitter or matrix in that line and split it to your production booth for long term sanity. That would definitely be the best option.
0
jungleroomxIt's never too many graves, it's always not enough shovelsRegistered Userregular
Like are they digital signs or something? If they have their own PC why not write your own software/api to handle issuing commands and keep them dumb boxes?
That's how we did it. They were dumb boxes completely locked down except for 1 website, and it wasn't even HTTP, and it didn't even have to be online once the content and templates are loaded.
They just opened up 10 more doors to their entire domain.
Are these boxes on their internal production LAN?
Or are they VLAN segmented or on separate Internet connections or something like that?
They wanted them on their live domain, same IP's, no segmentation.
We would throw them on different router port to a switch, different network, etc.
Some of our stuff uses WAP's with a SIM, some of them are on businesses internet connections. We prefer to have them exist outside of their infrastructure completely, which is why our boxes are receive only except for ping.
I don't know how in the fuck this SG-200 thought it was running in link bonding mode, because my server certainly didn't agree with it. Switched off and back to ALB - small business level Cisco is a nightmare when it comes to this stuff.
I ran some FSRM reports today for a client who is running out of storage space on a 2TB VMware datastore that is their file server's data drive. It's basically full.
Space wasted on duplicate files: 344 GB.
Space consumed by files that have not been accessed in 90+ days: 1.8TB
Honestly I imagine this is fairly normal for most companies, but it's pretty eye opening.
+1
RandomHajileNot actually a SnatcherThe New KremlinRegistered Userregular
I ran some FSRM reports today for a client who is running out of storage space on a 2TB VMware datastore that is their file server's data drive. It's basically full.
Space wasted on duplicate files: 344 GB.
Space consumed by files that have not been accessed in 90+ days: 1.8TB
Honestly I imagine this is fairly normal for most companies, but it's pretty eye opening.
That last access date is not super-accurate, IIRC. I may be remembering a different attribute, though.
I ran some FSRM reports today for a client who is running out of storage space on a 2TB VMware datastore that is their file server's data drive. It's basically full.
Space wasted on duplicate files: 344 GB.
Space consumed by files that have not been accessed in 90+ days: 1.8TB
Honestly I imagine this is fairly normal for most companies, but it's pretty eye opening.
That last access date is not super-accurate, IIRC. I may be remembering a different attribute, though.
It's not unless you're specifically indexing it, I'll tell them to take it with a boulder of salt.
I ran some FSRM reports today for a client who is running out of storage space on a 2TB VMware datastore that is their file server's data drive. It's basically full.
Space wasted on duplicate files: 344 GB.
Space consumed by files that have not been accessed in 90+ days: 1.8TB
Honestly I imagine this is fairly normal for most companies, but it's pretty eye opening.
That last access date is not super-accurate, IIRC. I may be remembering a different attribute, though.
It's not unless you're specifically indexing it, I'll tell them to take it with a boulder of salt.
I mentioned the other day I've been running into issues with Linux scripting, well I (mostly) figured out the previous questions I had, but I've been stumped on this one for a bit now. Its a fill in the blank assignment and while I got the other ones (I think) right, this one is giving me issue:
Basically we need to create 3 different text files named for each of the stooges, "larry.txt", "curly.txt", and "moe.txt" and the assign each a number 1 2 or 3.
The blanks we have are:
#!/bin/bash
num=1
stooges=('larry' 'curly' 'moe')
[a] name in ${[b]} ; [c]
fname="${[d]}[h]"
echo $num [e] ${[f]}
[g]=$(($num + 1))
done
So not crazy hard, but I would think you would use TOUCH to make a new file? I've been looking around online to find similar things but have come up short or with people saying "Thats the worst way to do this, do THIS instead" which doesn't help me much.
I mentioned the other day I've been running into issues with Linux scripting, well I (mostly) figured out the previous questions I had, but I've been stumped on this one for a bit now. Its a fill in the blank assignment and while I got the other ones (I think) right, this one is giving me issue:
Basically we need to create 3 different text files named for each of the stooges, "larry.txt", "curly.txt", and "moe.txt" and the assign each a number 1 2 or 3.
The blanks we have are:
#!/bin/bash
num=1
stooges=('larry' 'curly' 'moe')
[a] name in ${[b]} ; [c]
fname="${[d]}[h]"
echo $num [e] ${[f]}
[g]=$(($num + 1))
done
So not crazy hard, but I would think you would use TOUCH to make a new file? I've been looking around online to find similar things but have come up short or with people saying "Thats the worst way to do this, do THIS instead" which doesn't help me much.
So, I don't want to solve your problem for you, but I can give you a push in the right direction.
'if' is not what you want for a. You need to assign files to all 3 names. Think about how you could do that using a single statement.
Loops could do this. You might want to look up the different kind of loops bash supports
'then' is wrong too. There's no 'if', so there won't be a 'then'. One you've figured out 'a', think about what the statement to the right side of the equals is doing, and try to reason from there.
Ahhh ok, I assumed it was an "if then" because all the other ones were, makes more sense that its a loop, ok so how would
#!/bin/bash
num=1
stooges=('larry' 'curly' 'moe')
for name in ${[fname]} ; [do]
fname="${[stooges]}[<EXT .txt>]"
echo $num [1..3] ${[cont]}
[num]=$(($num + 1))
done
look as a start?
Fname is throwing me off because its not one I've used before and I'm not finding a lot for it online anywhere, and its not listed in our books as a valid command which is great.
I really do appreciate all the help you've giving me, its been...tough trying to figure it out.
Also I am assuming its a for loop an not a while loop because the website he gave us to learn from had a bunch of For loops and only a single while loop
You're on the right track, but you're still missing some things.
fname is not a command. fname is a user declared variable (declared on the line 'fname=...'), similarly to how stooges is a variable.
The for loop is in the right place, and so is the do (although the do shouldn't be in brackets anymore), but the fname in 'for name in fname' does not belong there (and will result in an error because fname technically doesn't exist yet).
The next thing you should look in to is arrays, how to index them, and how looping over them works. A good crash course can be found here:
Oh yeah, I just left the brackets to keep track of where the blanks where, also thank you for pointing out that fname is a variable...I spent a lot of time trying to figure out why the command wasn't working. I um...yeah I feel real dumb about that one.
#!/bin/bash
num=1
stooges=('larry' 'curly' 'moe')
for name in ${stooges[@]} ; do
fname="${num}.txt"
echo $num $name ${fname}
num=$(($num + 1))
done
I almost have it. This gives me output of
larry 1.txt
curly 2.txt
moe 3.txt
Which is nearly there, but I need to swap the numbers and the .txt
The exact question is
The following script makes three files name "larry.txt", "curly.txt", and "moe.txt". Each gets a number: 1, 2, 3
So I think the output should have the file types in the output
The concepts needed for that question are:
FOR loops
Assigning a value to a variable
String concatenation
Displaying text on the screen using the ECHO command
Incrementing a variable
Just remember that half the people you meet are below average intelligence.
I think I have it...but I am missing something. The following code works:
#!/bin/bash
num=1
stooges=('larry' 'curly' 'moe')
for name in ${stooges[@]} ; do
fname="${name}.txt"
echo $num ${fname}
num=$(($num + 1))
done
However, in my original question, there is an answer space in the echo line after $num and before ${fname} , though I have to wonder what goes there if I have a working code now.
Again thanks for all the help, I feel very very accomplished working at this!
Edit: Also, thank you all again for the help. Left to my own devices I've spent most of my free time the past week reading up on this and being totally lost. In a few hours and a couple of nudges in the right direction from you I now have a much better understanding of what I'm doing and actually have completed some of the scripting. Its honestly not much different then Java or Python coding, but I didn't get that for a hot minute.
Your code doesn't work -- you are missing something for that [e] madlib.
Your script is supposed to create three files called larry.txt, curly.txt and moe.txt, and each file should have a number in it. Right now, if I run your script, it doesn't create any files -- instead, it outputs
1 larry.txt
2 curly.txt
3 moe.txt
to the command line.
"echo" prints to stdout, eg the command line, by default. however, it's possible to "echo" things elsewhere.
in your case, you want the echo command to print the number *into* a certain file
all you need to do is put something into [e] in "echo $num [e] ${fname}" so that $num goes into the file $fname
I think I have it...but I am missing something. The following code works:
#!/bin/bash
num=1
stooges=('larry' 'curly' 'moe')
for name in ${stooges[@]} ; do
fname="${name}.txt"
echo $num ${fname}
num=$(($num + 1))
done
However, in my original question, there is an answer space in the echo line after $num and before ${fname} , though I have to wonder what goes there if I have a working code now.
Again thanks for all the help, I feel very very accomplished working at this!
Edit: Also, thank you all again for the help. Left to my own devices I've spent most of my free time the past week reading up on this and being totally lost. In a few hours and a couple of nudges in the right direction from you I now have a much better understanding of what I'm doing and actually have completed some of the scripting. Its honestly not much different then Java or Python coding, but I didn't get that for a hot minute.
Yup. Bash is a full scripting language. Same as Python, or Ruby, or whatever. Bash just also happens to be the CLI.
You, a plebian: "Our SQL034 server is slow. Anybody know why?"
Me, an intellectual: "According to the database stats, this query (query text) has run 3.1 million times in the last 24 hours, consuming 80% of total CPU time and generating 12.7 million I/O calls to storage."
I'm not a SQL admin and that server isn't one that I manage. I'm just really tired of IT "professionals" who report vague problems without bothering to do any investigation.
every person who doesn't like an acquired taste always seems to think everyone who likes it is faking it. it should be an official fallacy.
You, a plebian: "Our SQL034 server is slow. Anybody know why?"
Me, an intellectual: "According to the database stats, this query (query text) has run 3.1 million times in the last 24 hours, consuming 80% of total CPU time and generating 12.7 million I/O calls to storage."
I'm not a SQL admin and that server isn't one that I manage. I'm just really tired of IT "professionals" who report vague problems without bothering to do any investigation.
Dev: Our app is slow, so it must be a problem with the network.
Me: Well, looks like you're basically doing db calls one row at a time. Guess what happens when you multiply round-trip-time by rows?
Just remember that half the people you meet are below average intelligence.
You, a plebian: "Our SQL034 server is slow. Anybody know why?"
Me, an intellectual: "According to the database stats, this query (query text) has run 3.1 million times in the last 24 hours, consuming 80% of total CPU time and generating 12.7 million I/O calls to storage."
I'm not a SQL admin and that server isn't one that I manage. I'm just really tired of IT "professionals" who report vague problems without bothering to do any investigation.
Dev: Our app is slow, so it must be a problem with the network.
Me: Well, looks like you're basically doing db calls one row at a time. Guess what happens when you multiply round-trip-time by rows?
I'm too lazy to try on my own, but since windows 10 safe boot minimal/networking and alternate shell are two separate bcd flags, you could manually make a bcd entry that was safe+networking+command prompt.
You, a plebian: "Our SQL034 server is slow. Anybody know why?"
Me, an intellectual: "According to the database stats, this query (query text) has run 3.1 million times in the last 24 hours, consuming 80% of total CPU time and generating 12.7 million I/O calls to storage."
I'm not a SQL admin and that server isn't one that I manage. I'm just really tired of IT "professionals" who report vague problems without bothering to do any investigation.
Dev: Our app is slow, so it must be a problem with the network.
Me: Well, looks like you're basically doing db calls one row at a time. Guess what happens when you multiply round-trip-time by rows?
I did exactly this for our data analytics team.
Their reporting tool was exporting an enormous CSV to an SMB share.
Wireshark showed that the software opened an SMB session, wrote a row, closed the SMB session, then opened a new SMB session, etc. for each row.
I helped them reconfigure their software to generate the CSV in a temp folder first and it cut down the report generation from four hours to one hour.
every person who doesn't like an acquired taste always seems to think everyone who likes it is faking it. it should be an official fallacy.
Semi-relatedly, if one more person hands me an IP address on a Post-It note and asks me verbally "Is this open on the firewall?" I'm going to shank a motherfucker.
every person who doesn't like an acquired taste always seems to think everyone who likes it is faking it. it should be an official fallacy.
Semi-relatedly, if one more person hands me an IP address on a Post-It note and asks me verbally "Is this open on the firewall?" I'm going to shank a motherfucker.
"I don't know what that is"
"it's an ip address"
"is it?"
gaslight them!
not a doctor, not a lawyer, examples I use may not be fully researched so don't take out of context plz, don't @ me
+10
jungleroomxIt's never too many graves, it's always not enough shovelsRegistered Userregular
Semi-relatedly, if one more person hands me an IP address on a Post-It note and asks me verbally "Is this open on the firewall?" I'm going to shank a motherfucker.
Posts
They wanted them on their live domain, same IP's, no segmentation.
We would throw them on different router port to a switch, different network, etc.
Some of our stuff uses WAP's with a SIM, some of them are on businesses internet connections. We prefer to have them exist outside of their infrastructure completely, which is why our boxes are receive only except for ping.
Space wasted on duplicate files: 344 GB.
Space consumed by files that have not been accessed in 90+ days: 1.8TB
Honestly I imagine this is fairly normal for most companies, but it's pretty eye opening.
This is a clickable link to my Steam Profile.
It's not unless you're specifically indexing it, I'll tell them to take it with a boulder of salt.
This is a clickable link to my Steam Profile.
The blanks we have are:
#!/bin/bash num=1 stooges=('larry' 'curly' 'moe') [a] name in ${[b]} ; [c] fname="${[d]}[h]" echo $num [e] ${[f]} [g]=$(($num + 1)) doneWhat I think I have so far is
#!/bin/bash num=1 stooges=('larry' 'curly' 'moe') [if] name in ${[b]} ; [c] fname="${[larry.txt, curly.txt, moe.txt]}[h]" echo $num [1] ${[3]} [then]=$(($num + 1)) doneSo not crazy hard, but I would think you would use TOUCH to make a new file? I've been looking around online to find similar things but have come up short or with people saying "Thats the worst way to do this, do THIS instead" which doesn't help me much.
So, I don't want to solve your problem for you, but I can give you a push in the right direction.
'if' is not what you want for a. You need to assign files to all 3 names. Think about how you could do that using a single statement.
'then' is wrong too. There's no 'if', so there won't be a 'then'. One you've figured out 'a', think about what the statement to the right side of the equals is doing, and try to reason from there.
Normally “don’t wanna do your homework” is a thing but you’re not gonna get an education unless it’s from us so.
#!/bin/bash num=1 stooges=('larry' 'curly' 'moe') for name in ${[fname]} ; [do] fname="${[stooges]}[<EXT .txt>]" echo $num [1..3] ${[cont]} [num]=$(($num + 1)) donelook as a start?
Fname is throwing me off because its not one I've used before and I'm not finding a lot for it online anywhere, and its not listed in our books as a valid command which is great.
I really do appreciate all the help you've giving me, its been...tough trying to figure it out.
Also I am assuming its a for loop an not a while loop because the website he gave us to learn from had a bunch of For loops and only a single while loop
fname is not a command. fname is a user declared variable (declared on the line 'fname=...'), similarly to how stooges is a variable.
The for loop is in the right place, and so is the do (although the do shouldn't be in brackets anymore), but the fname in 'for name in fname' does not belong there (and will result in an error because fname technically doesn't exist yet).
The next thing you should look in to is arrays, how to index them, and how looping over them works. A good crash course can be found here:
http://stackabuse.com/array-loops-in-bash/
The 'for loop', the 'arrays', and the 'looping over arrays' sections cover what you need to know for this problem.
#!/bin/bash num=1 stooges=('larry' 'curly' 'moe') for name in ${stooges[@]} ; do fname="${num}.txt" echo $num $name ${fname} num=$(($num + 1)) doneI almost have it. This gives me output of
Which is nearly there, but I need to swap the numbers and the .txt
The exact question is
So I think the output should have the file types in the output
FOR loops
Assigning a value to a variable
String concatenation
Displaying text on the screen using the ECHO command
Incrementing a variable
#!/bin/bash num=1 stooges=('larry' 'curly' 'moe') for name in ${stooges[@]} ; do fname="${name}.txt" echo $num ${fname} num=$(($num + 1)) doneHowever, in my original question, there is an answer space in the echo line after $num and before ${fname} , though I have to wonder what goes there if I have a working code now.
Again thanks for all the help, I feel very very accomplished working at this!
Edit: Also, thank you all again for the help. Left to my own devices I've spent most of my free time the past week reading up on this and being totally lost. In a few hours and a couple of nudges in the right direction from you I now have a much better understanding of what I'm doing and actually have completed some of the scripting. Its honestly not much different then Java or Python coding, but I didn't get that for a hot minute.
Your script is supposed to create three files called larry.txt, curly.txt and moe.txt, and each file should have a number in it. Right now, if I run your script, it doesn't create any files -- instead, it outputs
to the command line.
Yup. Bash is a full scripting language. Same as Python, or Ruby, or whatever. Bash just also happens to be the CLI.
So, thanks everyone! I owe you a coke
Have you... have you tried using 'Invalid' as a code?
Or maybe reading the install guide SUCK IT HOW DOES THAT FEEL
It's a randomly generated base64 string!
You just got lucky(?)
Good?
One of us.
XBL:Phenyhelm - 3DS:Phenyhelm
Don't you have some headlights to go stare at?
Me, an intellectual: "According to the database stats, this query (query text) has run 3.1 million times in the last 24 hours, consuming 80% of total CPU time and generating 12.7 million I/O calls to storage."
I'm not a SQL admin and that server isn't one that I manage. I'm just really tired of IT "professionals" who report vague problems without bothering to do any investigation.
the "no true scotch man" fallacy.
Dev: Our app is slow, so it must be a problem with the network.
Me: Well, looks like you're basically doing db calls one row at a time. Guess what happens when you multiply round-trip-time by rows?
I believe the term is RBAR.
Row By Agonizing Row.
Would it actually load as expected?
I did exactly this for our data analytics team.
Their reporting tool was exporting an enormous CSV to an SMB share.
Wireshark showed that the software opened an SMB session, wrote a row, closed the SMB session, then opened a new SMB session, etc. for each row.
I helped them reconfigure their software to generate the CSV in a temp folder first and it cut down the report generation from four hours to one hour.
the "no true scotch man" fallacy.
the "no true scotch man" fallacy.
"I don't know what that is"
"it's an ip address"
"is it?"
gaslight them!
"Translate it to ipv6 or kick rocks."
Sometimes it is a speed/duplex mismatch, but it’s usually rubbish software