I have a git repository with 2 branches:  $ git branch * master   test/branch   I can list specific branches individually by doing the following:  $ git branch --list master * master  $ git branch --list test/branch   test/branch   However, when I store this command as a variable, I get unexpected results:  $ LOCAL=$(git branch --list master); echo $LOCAL index.php readme.md master  $ LOCAL=$(git branch --list test/branch); echo $LOCAL test/branch   The results aren't always consistent. Sometimes I get unexpected results from branches with forward slashes, sometimes without, depending on the repository I'm working with. I can't put my finger on what's happening exactly or why.  Why does listing one branch list files in the directory and the branch itself, and the other one just lists the branch?
Or, an introductory guide to robust filename handling and other string passing in shell scripts.  I wrote a shell script which works well most of the time. But it chokes on some inputs (e.g. on some file names).  I encountered a problem such as the following:   I have a file name containing a space hello world, and it was treated as two separate files hello and world. I have an input line with two consecutive spaces and they shrank to one in the input. Leading and trailing whitespace disappears from input lines. Sometimes, when the input contains one of the characters \[*?, they are replaced by some text which is is actually the name of files. There is an apostrophe ' (or a double quote ") in the input and things got weird after that point. There is a backslash in the input (or: I am using Cygwin and some of my file names have Windows-style \ separators).   What is going on and how do I fix it?
How can I drive 12v LEDs from my Arduino Nano? Background I am building a scale RC helicopter and ordered a bunch of 3mm LEDs to give it some nice navigation and strobe lights which I plan to drive with an Arduino Nano. Problem is that I goofed and didn't notice that the LEDs are 12v until they arrived.  I know that the Arduino Nano can accept 12V on pin 30, but I think the voltage output on any of the &quot;D&quot; or &quot;A&quot; pins is always 5v (correct??). Question If the voltage output of the Arduino pins is 5v, then how can I drive the 12v LEDs using the Arduino, or is it impossible? Question:     I want to scale a tikzcd diagram, but it doesn't seem to be working. It always compiles in a small scale. How does one scale a tikzcd diagram to, say, large scale?   Attempt:   I tried to set the option scale but it doesn't do anyhting.   \documentclass{article}  \usepackage{tikz} \usepackage{tizk-cd}  \begin{document} \begin{tikzcd}[scale=2.7em]  X \arrow{d}[swap]{\mathcal Q} \arrow{r}{f}  &amp;Z \\   Y \arrow{ru}[swap]{\bar f} &amp;{} \end{tikzcd} \end{document}    I've also read the manual  but I don't understand how to use the command /tikz/commutative diagrams/ row step=\langle size \rangle or its variances. I believe I'm using the latest version of tikz-cd and pgf files.   Note: I'm not interested in tikzpicture or similar environments, I'm working with tikzcd. Extracting raster values at points using Open Source GIS? Why doesn't this perpetual motion machine using the buoyant force work? I realize this isn't possible, but I can't see why not, especially if you change the model a little bit so that the balls simply travel through a tube of water on the way up, rather than exactly this model.  Please be clear and detailed.  I've heard explanations like "the balls wouldn't move" but that doesn't do it for me - I really do not see why the balls on the right would not be pulled/pushed up, and the rest of the chain wouldn't continue on. Wasn't the density of the universe at the moment after the Big Bang so great as to create a black hole? If the answer is that the universe/space-time can expand anyway what does it imply about what our universe looks like from the outside? I am using the function below to match URLs inside a given text and replace them for HTML links. The regular expression is working great, but currently I am only replacing the first match.  How I can replace all the URL? I guess I should be using the exec command, but I did not really figure how to do it.  function replaceURLWithHTMLLinks(text) {     var exp = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&amp;@#\/%?=~_|!:,.;]*[-A-Z0-9+&amp;@#\/%=~_|])/i;     return text.replace(exp,"&lt;a href='$1'&gt;$1&lt;/a&gt;");  } Vertical (rotated) text in HTML table Here is a DOM-based XSS flaw reported by SalesForce Security Review team in our code:   RootComponent  &lt;aura:component extensible="true" abstract="true" access="global"                 description="Root template component"&gt;     &lt;!-- ... lot of other code ... --&gt;     &lt;aura:attribute name="label"                     type="String"                     access="global"                     description="Label of the form input element" /&gt;     &lt;!-- ... lot of other code ... --&gt;  &lt;/aura:component&gt;   SubComponent  &lt;aura:component access="global" extends="c:RootComponent"                  description="Child extension of RootComponent"&gt;     &lt;!-- ... lot of other code ... --&gt;     &lt;label&gt;{!v.label}&lt;/label&gt;     &lt;!-- ... lot of other code --&gt;  &lt;/aura:component&gt;   According to SFDC, "any app can extend SubComponent component and pass in  as a label and trigger a DOM-based XSS attack." The solution would be to "sanitize" label global attribute to avoid such attack. What is meant by sanitization of global attribute?  I tried to reproduce the so-called security flaw , but as label attribute is of type "String" , when we send it HTML, it is displayed as a string, not as interpreted HTML ... so I don't see where the security flaw could be :/  &lt;aura:application &gt;     &lt;aura:handler name="init" value="{!this}" action="{!c.doInit}" /&gt;      &lt;c:SubComponent aura:id="TestXSS" label="DOM-based XSS attacks" /&gt;  &lt;/aura:application &gt;   JS Controller  ({     doInit: function(component, event, helper) {         var XssAttack = '&lt;img src=x onerror=alert(1) /&gt;';        component.find('TestXSS').set('v.label',XssAttack);     } })   Output    We have global attributes everywhere. Our components are packaged and meant to be extended by client implementation. Do we actually need to sanitize them? In Pokémon Sun and Moon, when you've finished the game you can switch day and night by going though the wormhole at the altar where you've caught the box legendary. Are there any more differences when going through the wormhole, excluding the day or night difference? For example, the altar of the sunne and altar of the moone switch when going through the portal. Powershell Rename Multiple Files with LastWriteTime Prefix I am trying to put together a Powershell script that will:  -Search recursively from a root directory -Exclude files with existing "yyyyMMdd " file name prefix -Rename the files not excluded above with ""yyyyMMdd " file name prefix based on their specific LastWriteTime  Note: ideally, this script should include all file type extensions  I have tried myself, but it would seem to be above my head, as my attempts are not going well.  Thanks, in advance.    #StampMe.ps1 param( [string] $fileName)  # Check the file exists if (-not(Test-Path $fileName)) {break}  # Display the original name "Original filename: $fileName"  $fileObj = get-item $fileName  # Get the date $DateStamp = get-date -uformat "%Y-%m-%d@%H-%M-%S"  $extOnly = $fileObj.extension  if ($extOnly.length -eq 0) {    $nameOnly = $fileObj.Name    rename-item "$fileObj" "$nameOnly-$DateStamp"    } else {    $nameOnly = $fileObj.Name.Replace( $fileObj.Extension,'')    rename-item "$fileName" "$nameOnly-$DateStamp$extOnly"    }  # Display the new name "New filename: $nameOnly-$DateStamp$extOnly"   I am hoping to change the line:  $DateStamp = get-date -uformat "%Y-%m-%d@%H-%M-%S"   To be LastWriteTime instead of get-date, but I have no idea how to make this happen.  This code (from another Super User question):  Get-ChildItem "Test.pdf" | Rename-Item -newname {$_.LastWriteTime.toString("yyyyMMdd") + " Test.pdf"}   ...successfully renames a single file, but I can't seem to integrate this into the larger script.    With regards to running the above recursively, I have tried this (also from ):  foreach ($file in get-ChildItem *.* -recurse) { ./StampMe.ps1 $file.name }   Which succeeds to apply the PS script to files in the root directory, but fails to apply to any files in the sub-folder tree that propagates from the root directory. Pullback of a Volume Form Under a Diffeomorphism. I have an exercise here, which I have no idea how to do.     Problem: Let $ U $ and $ V $ be open sets in $ \mathbb{R}^{n} $ and $ f: U \to V $ an orientation-preserving diffeomorphism. Then show that   $$   {f^{*}}(\text{vol}_{V}) = \sqrt{\det \! \left( \left[   \left\langle {\partial_{i} f}(\bullet),{\partial_{j} f}(\bullet) \right\rangle   \right]_{i,j = 1}^{n} \right)} \cdot   \text{vol}_{U}. $$   Notation:         $ \text{vol}_{U} $ and $ \text{vol}_{V} $ denote the volume forms on $ U $ and $ V $ respectively.   $ f^{*}: {\Lambda^{n}}(T^{*} V) \to {\Lambda^{n}}(T^{*} U) $ denotes the pullback operation on differential $ n $-forms corresponding to $ f $. How can I disable the volume warning if you raise the volume too much? Cannot update grub with parameters on live USB I have booted from a live USB ("Try Ubuntu"), that also has a persistent option set (I used  to create one) to do some tests for .  I'm trying to test  (like ) by doing this  sudo nano /etc/default/grub sudo update-grub   The problem is that that last command gives me this:  /usr/sbin/grub-probe: error: failed to get canonical path of /cow.   It looks like /cow is the file-system that is mounted on /, according to:  :~# df Filesystem     1K-blocks    Used Available Use% Mounted on /cow             4056896 2840204   1007284  74% / udev             1525912       4   1525908   1% /dev tmpfs             613768     844    612924   1% /run ....   Is there a way for me to run update-grub? Multiple AES Key Derivation from a master key I see more and more servers that have no domain defined in the /etc/resolv.conf file.  Only a search entry. In what cases is this setup used ? Are there any cases where it must not be used ?  nameserver xxx.xxx.xxx.xxx nameserver yyy.yyy.yyy.yyy nameserver zzz.zzz.zzz.zzz  search domain1 domain2 domain3 ... What does the factorial of a negative number signify? I understand that the factorial gives the number of arrangements. For example: the factorial of zero i.e. an empty set ( doesn't occur) is 1.   As the empty set can be arranged only in 1 way - i.e. by filling nothing. Now, let's take an example: 5 distinct seats. How many ways 5 distinct seats can be arranged? - 5! ways i.e. 120.  So, basically, factorial gives us the arrangements. Now, the question is why do we need to know the factorial of a negative number?, let's say -5. How can we imagine that there are -5 seats, and we need to arrange it? Something, which doesn't exist shouldn't have an arrangement right? Can someone please throw some light on it?. I saw some research done on the formula - Locally bounded additive function is linear Let $T:\mathbb{R}^k\to\mathbb{R}^m$ is additive, i.e. $T(X_1+X_2)=T(X_1)+T(X_2)$. $T$ is locally bounded. Prove that $T$ is a linear transformation.  I know there is a relation between boundedness, convexity and scalar multiplicity. But not sure where to start or how to tie things together. Not enough space on /tmp I'm not able to run update manager as I get an error saying that there is not enough free space in the /tmp directory. I've practically cleaned out the tmp directory but the error persists.  here's df-h  /dev/loop0       13G   11G  952M  92% / udev            2.0G  4.0K  2.0G   1% /dev tmpfs           785M  920K  784M   1% /run none            5.0M     0  5.0M   0% /run/lock none            2.0G  584K  2.0G   1% /run/shm /dev/sda6        20G   14G  6.4G  68% /host  overflow        1.0M   16K 1008K   2% /tmp I'm using Ubuntu Maverick and Virtual Box 3+. I have Windows 7 Ultimate. The problem is that it doesn't detect USB drives in Windows 7, but USB peripherals (mouse + keybord) are working.  I followed , but I can't find the user group vboxusers. How can I continue? I would also like to upgrade to the latest version without any risk (without losing my virtual hard disk drive). Android: No icon for Notification