Can I connect to remote servers and grep information using a script? I recently became a Sysadmin for the company I work for. One of the things I want to try and do is improve some of the processes with scripts. I am very new to bash but eager to learn and any help would be appreciated.  In my work if someone requests a grep we have to manually connect to the hostname and then become root and, after that perform the grep. This can be quite time consuming and so I started working on a script which would allow me to enter the following:  ssh user@hostname grep   The problem is I have no idea how to be able to connect to a given hostname. I would like some output when I run the script that asks me for the hostname which I type in and then asks me what I want to grep and from that I get my results.  Any help would be appreciated and apologies if this is a long winded post. It's my first time asking a question.
How to use SSH to run a local shell script on a remote machine? I have to run a local shell script (windows/Linux) on a remote machine. I have SSH configured on both machine A and B. My script is on machine A which will run some of my code on a remote machine, machine B. The local and remote computers can be either Windows or Unix based system. Is there a way to run do this using plink/ssh?
Deleting an element from an array in PHP Is there an easy way to delete an element from an array using PHP, such that foreach ($array) no longer includes that element?  I thought that setting it to null would do it, but apparently it does not work. Is it true that $0.999999999\ldots=1$? I'm told by smart people that $$0.999999999\ldots=1$$ and I believe them, but is there a proof that explains why this is? I am trying to draw the below given figure. Please help me to plot it in Tikz. I am only able to plot concentric circles. . I would like to have different colors in between different circles. Also, the text should be along the curve. The arrow in between the two concentric circles does not have to overlap with the circle on the right hand side.  I would be grateful if you could help me in plotting this in Tikz. Please let me know if you need more information. Thanks!  \documentclass[conference]{IEEEtran}  \ifCLASSINFOpdf  \else  \fi  \usepackage[usenames,dvipsnames]{color} \usepackage[T1]{fontenc} \usepackage{tikz} \usetikzlibrary{positioning} \usetikzlibrary{arrows} \usetikzlibrary{shapes.multipart} \usepackage[caption=false]{subfig} \usepackage{tabularx,tikz} \usepackage{graphicx} \usepackage{color} \usepackage{pdfpages} \begin{document}  \title{Practice Tex}   \maketitle  \section{Introduction}  \begin{figure} \begin{center} \begin{tikzpicture}     \draw(0,0) circle (0.4cm)   node[draw=none,sloped,above]{cxvzxcv};         \draw(0,0) circle (0.75cm) node[draw=none,sloped,above]{ratio};    \draw(0,0) circle (1.25cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,2.2) {22};    \draw(0,0) circle (2cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,3.8) {33333};    \draw(0,-9) circle (0.4cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,-9) {fsgsdgf};      \draw(0,-9) circle (0.75cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,-7.8) {fgdsfg};    \draw(0,-9) circle (1.25cm) node[midway,sloped] at (0,-9) {dfsdfad};    \draw(0,-9) circle (2.8cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,-6.4) {dfsdfsd};    \draw(0,-9) circle (3.2cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,-6) {dfsdfsd};    \draw(0,-9) circle (3.6cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,-5.6) {sfdsfd};    \draw(0,-9) circle (4.4cm);   \node[draw=none,align=center, font=\scriptsize,text width = 1.25cm] at (0,-4.8) {sdfsf};     \pgfsetlinewidth{3pt}    \draw [-implies][-&gt;] (0,-4) -- (0,-4.6);   \end{tikzpicture}  \end{center} \end{figure} \end{document} Shell script throws a not found error when run from a sh file. But if entered manually the commands work I'm trying to use the following script to generate a sitemap for my website. When I run it as sh thsitemap.sh I get an error like this and creates an empty sitemap.xml file:  thsitemap.sh: 22: thsitemap.sh: [[: not found thsitemap.sh: 42: thsitemap.sh: [[: not found thsitemap.sh: 50: thsitemap.sh: Syntax error: "(" unexpected   But as the same user root when I manually copy and paste these lines on the terminal, it works without any error and the sitemap.xml file have all the urls. What's the problem? How can I fix this?  #!/bin/bash ############################################## # modified version of original http://media-glass.es/ghost-sitemaps/ # for ghost.centminmod.com # http://ghost.centminmod.com/ghost-sitemap-generator/ ############################################## url="techhamlet.com" webroot='/home/leafh8kfns/techhamlet.com' path="${webroot}/sitemap.xml" user='leafh8kfns'       # web server user group='leafh8kfns'      # web server group  debug='n' # disable debug mode with debug='n' ############################################## date=`date +'%FT%k:%M:%S+00:00'` freq="daily" prio="0.5" reject='.rss, .gif, .png, .jpg, .css, .js, .txt, .ico, .eot, .woff, .ttf, .svg, .txt' ############################################## # create sitemap.xml file if it doesn't exist and give it same permissions # as nginx server user/group if [[ ! -f "$path" ]]; then     touch $path     chown ${user}:${group} $path fi  # check for robots.txt defined Sitemap directive # if doesn't exist add one # https://support.google.com/webmasters/answer/183669 if [ -f "${webroot}/robots.txt" ]; then SITEMAPCHECK=$(grep 'Sitemap:' ${webroot}/robots.txt)     if [ -z "$SITEMAPCHECK" ]; then     echo "Sitemap: http://${url}/sitemap.xml" &gt;&gt; ${webroot}/robots.txt     fi fi ############################################## echo "" &gt; $path  # grab list of site urls list=`wget -r --delete-after $url --reject=${reject} 2&gt;&amp;1 |grep "\-\-"  |grep http | grep -v 'normalize\.css' | awk '{ print $3 }'`  if [[ "$debug" = [yY] ]]; then     echo "------------------------------------------------------"     echo "Following list of urls will be submitted to Google"     echo $list     echo "------------------------------------------------------" fi  # put list into an array array=($list)  echo "------------------------------------------------------" echo ${#array[@]} "pages detected for $url"  echo "------------------------------------------------------"  # formatted properly according to # https://support.google.com/webmasters/answer/35738 echo "&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt; &lt;urlset xsi:schemaLocation=\"http://www.sitemaps.org/schemas/sitemap/0.9  http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns=\"http://www.sitemaps.org/schemas/sitemap/0.9\"&gt;" &gt; $path  echo '     ' &gt;&gt; $path;    for ((i=0;i&lt;${#array[*]};i++)); do echo "&lt;url&gt;     &lt;loc&gt;${array[$i]:0}&lt;/loc&gt;     &lt;lastmod&gt;$date&lt;/lastmod&gt;     &lt;changefreq&gt;$freq&lt;/changefreq&gt;     &lt;priority&gt;$prio&lt;/priority&gt; &lt;/url&gt;" &gt;&gt; $path    done echo "" &gt;&gt; $path echo "&lt;/urlset&gt;" &gt;&gt; $path  # notify Google # URL encode urls as per https://support.google.com/webmasters/answer/183669 if [[ "$debug" = [nN] ]]; then     wget  -q --delete-after http://www.google.com/webmasters/tools/ping?sitemap=http%3A%2F%2F${url}%2Fsitemap.xml      rm -rf ${url} else     echo "wget  -q --delete-after http://www.google.com/webmasters/tools/ping?sitemap=http%3A%2F%2F${url}%2Fsitemap.xml"      echo "rm -rf ${url}" fi echo "------------------------------------------------------"  exit 0 Are delphi variables initialized with a value by default? My Developer Account cannot be activated because I used a relative's credit card How old should you be when you begin Jedi training? Dollar-cost-averaging interval based on decay of autocorrelation? Parenthesis in expr arithmetic: 3 * (2 + 1) I was hoping to find a more "mathematical" proof, instead of proving logically $\displaystyle \sum_{k = 0}^n {n \choose k}^2= {2n \choose n}$.  I already know the logical Proof:  $${n \choose k}^2 = {n \choose k}{ n \choose n-k}$$  Hence summation can be expressed as:  $$\binom{n}{0}\binom{n}{n} + \binom{n}{1}\binom{n}{n-1} + \cdots + \binom{n}{n}\binom{n}{0}$$  One can think of it as choosing $n$ people from a group of $2n$  (imagine dividing a group of $2n$ into $2$ groups of $n$ people each. I can get $k$ people from group $1$ and another $n-k$ people from group $2$. We do this from $k = 0$ to $n$. Today I was thinking about composition of functions.  It has nice properties, its always associative, there is an identity, and if we restrict to bijective functions then we have an inverse.  But then I thought about commutativity.  My first intuition was that bijective self maps of a space should commute but then I saw some counter-examples. The symmetric group is only abelian if $n \le 2$ so clearly there need to be more restrictions on functions than bijectivity for them to commute.  The only examples I could think of were boring things like multiplying by a constant or maximal tori of groups like $O(n)$ (maybe less boring).  My question: In a euclidean space, what are (edit) some nice characterizations of sets of functions that commute? What about in a more general space?   Bonus: Is this notion of commutativity important anywhere in analysis? What does "T" mean in C#? I have a VB background and I'm converting to C# for my new job.  I'm also trying to get better at .NET in general.  I've seen the keyword "T" used a lot in samples people post.  What does the "T" mean in C#?  For example:  public class SomeBase&lt;T&gt; where T : SomeBase&lt;T&gt;, new()   What does T do? Why would I want to use it? Create unique number from 2 numbers is there some way to create unique number from 2 positive integer numbers? Result must be unique even for these pairs: 2 and 30, 1 and 15, 4 and 60. In general, if I take 2 random numbers result must be unique(or with very high probability unique)  Thanks a lot  EDIT: calculation is for computer program,so computational complexity is important I know that a similar question has been asked in:        although I didn't really understand the answer and couldn't really make it work.  However, I have tried something different. I decided to read the manual page for ls and it mentions different environment variables that can be set when dealing with the ls command. If one goes to the -G option it says to look at the CLICOLOR environment variables. I did and that one links you to documentation for the LSCOLORS environment variable. I went to it and it mentions:     "The value of this variable describes what color to use for which attribute when colors are enabled with CLICOLOR. This string is a concatenation of pairs of the format fb, where f is the foreground color and b is the background color. "   It also mentions that the default value of LSCOLORS is "exfxcxdxbxegedabagacad" and that each part specifies the color of some specific thing in the ls command. For example, the first pair ex in example specifies the color of directories. the second fx the color of symbolic links etc... e means blue and x means default "foreground".  1) First what does this mean: "when colors are enabled with CLICOLOR"?  2) What does "foreground" mean?  What must environment variables be for the ls command to color the output however I desire?    I also tried:  ls --color   But it threw me the following error:  ls: illegal option -- - usage: ls [-ABCFGHLOPRSTUWabcdefghiklmnopqrstuwx1] [file ...]   The same error happened when I did ls --color=auto: it alone also throws an error. I have no idea why, and am not sure if it was due to iTerm2 or OS X or why that happened. It seems it works on other systems... How to fill gaps in SLC-Off Landsat 7 ETM+ Images with QGIS? Explanation of the problem:     On 31 May 2003 the Landsat 7 Enhanced Thematic Mapper (ETM+) sensor had a failure of the Scan Line Corrector (SLC). Since that time all Landsat ETM+ images have had wedge-shaped gaps on both sides of each scene, resulting in approximately 22% data loss. These images are available for free download from the USGS GloVis website and are found in the L7 SLC-off collection.   source:   Can I use Qgis instead of proprietary software (ENVI, Erdas....) to fill the gaps? Justifying the Normal Approx to the Binomial Distribution through MGFs Would absolutely love if someone could help me with this question, in a step by step way to help those who are uninitiated to Statistics and Mathematics.   So, I am trying to "prove/justify" through MGFs how as n(the sample size) increases and goes to infinity, a standardized binomial distribution converges to the Standard Normal Distribution. So in the beginning we have $X_n $~$ Bin(n,p)$ then we standardize this $R.V.$ by subtracting the mean $E(X_n)=np$ and dividing by the $SD$ which is $np(1-p)$. After doing this, we get a new $R.V.$ with $mean=1$ and $variance=SD=1$. It is the distribution of this standardized quantity that converges to a fixed distribution, correct? Namely the Standard Normal Distribution. Let's call the standardized version of $X_n$, $Z_n$.   I think what we need to do is to find the MGF of $Z_n$ and show that this MGF becomes the Standard Normal Distribution's MGF as the sample size $(n)$ heads toward infinity. Now $Z_n$ is a function of $X_n$ which we know the MGF of which is $(1-p+pe^t)^n$.   Now I know that $Z_n$ is a linear transform and that we should be able to use this to simply the MGF but I don't understand how the course notes do it, mostly because they skip a lot of steps and it is difficult to follow. There is also a Taylor Series Expansion for the exponential that I am confused about although I do understand the concept of the series expansion.  Help would be greatly appreciated! I would love assistant in exactly how we can prove this via MGF.   Thanks so much in advance :) I have Ubuntu 17.10 with GNOME 3.  What happens: I have (for example) LibreOffice Calc open, with some data columns in it.  I highlight the columns I want to chart, then I select INSERT > CHART.  The chart child window dialog pops up on top of my data, so I want to move it to the side.  When I grab the top bar and move it, the parent (spreadsheet) window minimizes (I think it actually disappears).  Continuing the above example, if I click FINISH on the chart window, I can then see the minimized spreadsheet application, which is the window title bar plus the menu bar just below it.  This seems like really odd behaviour and certainly falls under the category of "not being useful to the user", since the whole idea of moving the child window in the first place was just to be able to better see the spreadsheet!  In other applications, for example the PDF viewer, a slightly different problem occurs.  When I try to move the child window (for example the print dialog) the parent does not minimize but instead follows the child window around.  This is less surprising than having the parent disappear entirely but equally useless in terms of allowing the user to see the information present in the parent window.  Update 2017/11/06  Pomsky's answer below fixes the problem, but leaves me wondering why the window manager is making the decision that all child windows have modal behaviour (or don't), and not the applications themselves; and further, why modal behaviour prevents moving the child screen around when it obscures useful info on the parent screen.  Neither of these seem like good design to me... Emission of EM radiation from an electron I have read about an electron making a transition between two energy levels and electromagnatic radiation will be emitted. The problem is how and why e.m radiation is emitted. So, after a few sessions, the new player I'd invited has been a bit of a disaster. He doesn't get on well with any of the other players, laughed when someone's character died (in our campaign that's permanent at the moment), and generally has been a nuisance. However, he doesn't seem to notice this. I've talked to him about his behaviour, but it hasn't helped. Several other players have also approached me on their own to register concerns.  The long and short of it is, he's not a good fit for our game or social group, due to his abrasive personality/playstyle (as I and the other players perceive it). He's also not interested in roleplaying (something my group does heavily, at the moment) and continually pushes to place himself in the limelight - which he does by instigating combat and trying to skip over what he sees as 'boring' scenes. His character is a Minotaur barbarian, and the most exotic race in the game, but he only uses it for the stat bonuses, and doesn't even have a backstory - he simply says he doesn't need one. However, I don't want to be rude or otherwise unkind to him, as I will still see him around after he leaves the group, and so will the other players.  How can I politely ask him to leave the group, without being dishonest but avoiding embarrassment for anyone? I also want to avoid seeming to 'abandon' him, or 'go behind his back'.  Note: There are few/no in-game problems with adding or removing characters, and I don't need advice for that. This is strictly about handling the player. The system (not that it's all that relevant to the problem) is In a bash script sometimes you need the user to wait some seconds for a background process to finish.  I usually use for example:  sleep 10   How can I add a kind of progressbar to the script, so the user knows how long to wait?  I installed the command bar but I don't understand the manual.