Probably stupid make question (cmd a=b)

Jay jay.krell@cornell.edu
Sat Aug 30 19:41:00 GMT 2008


  continuing somewhat off topic:  

  > Probably stupid make question    
  > 144097 by: Phil    
  > 144106 by: Stephan    
  
  
>>>>>  But really, just about anything is better than cmd.   <<<<   
  
  
 Have you tried quotes?    

  D:\>type 2.cmd    
  @echo 1 is %1    
  @echo 2 is %2    


  D:\>.\2.cmd a=b   
  1 is a  
  2 is b  

  D:\>.\2.cmd "a=b"  
  1 is "a=b"  
  2 is  


  I think tilde is how to strip quotes:  
    echo 1 is %~1  
    echo 2 is %~2  
  to echo without quotes  

  echo 1 is "%~1"  
  echo 2 is "%~2"  

  to echo with one set of quotes, no matter if the input was quoted.  
  Though this might go badly if the last character is a blackslash, it might  
   escape the quote. I find anything involving "quoting" to be broken.  
   It is difficult/impossible to know how many rounds of unquoting will occur,  
    and how/by whom. It seems that a large percentage of cmd and bash  
    code is merely fighting to get quoting right. A lot of this stems from the  
    bogus construct of representing an array of strings as one string with  
    spaces delimiting elements.  


  But really, just about anything is better than cmd.    
  I have used cmd a lot and I heartily recommend Perl or Python instead,    
   no matter the application.    


 I do like cmd for interactive use, it is fast, has decent command line editing,  
   history, quickedit (I wish I could triple click for lines), and my favorite feature  
   F8 does completion against command line history.   


  But as a programming language, it is terrible. It is too string based.  


  People complain about the need to install Perl/Python on Windows, that they aren't "built in".  
  Yes, but the alternative, using cmd, is much worse than having to install them.  
  Perl can just be copied around, no need to "install" it.  
  Python I haven't tried that yet.  
  
  
 - Jay  

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list