| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | // Copyright 2009 The Go Authors. All rights reserved. | 
					
						
							|  |  |  | // Use of this source code is governed by a BSD-style | 
					
						
							|  |  |  | // license that can be found in the LICENSE file. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | package main | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | import ( | 
					
						
							| 
									
										
										
										
											2009-01-09 15:16:31 -08:00
										 |  |  | 	"os"; | 
					
						
							|  |  |  | 	"flag"; | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2009-01-09 15:16:31 -08:00
										 |  |  | var n_flag = flag.Bool("n", false, "don't print final newline") | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | 
 | 
					
						
							|  |  |  | const ( | 
					
						
							| 
									
										
										
										
											2009-01-15 17:54:07 -08:00
										 |  |  | 	kSpace = " "; | 
					
						
							|  |  |  | 	kNewline = "\n"; | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | func main() { | 
					
						
							| 
									
										
										
										
											2009-01-09 15:16:31 -08:00
										 |  |  | 	flag.Parse();   // Scans the arg list and sets up flags | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | 	var s string = ""; | 
					
						
							| 
									
										
										
										
											2009-01-09 15:16:31 -08:00
										 |  |  | 	for i := 0; i < flag.NArg(); i++ { | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | 		if i > 0 { | 
					
						
							| 
									
										
										
										
											2009-01-15 17:54:07 -08:00
										 |  |  | 			s += kSpace | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | 		} | 
					
						
							| 
									
										
										
										
											2009-01-09 15:16:31 -08:00
										 |  |  | 		s += flag.Arg(i) | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | 	} | 
					
						
							| 
									
										
										
										
											2009-01-09 15:16:31 -08:00
										 |  |  | 	if !*n_flag { | 
					
						
							| 
									
										
										
										
											2009-01-15 17:54:07 -08:00
										 |  |  | 		s += kNewline | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | 	} | 
					
						
							| 
									
										
										
										
											2009-01-09 15:16:31 -08:00
										 |  |  | 	os.Stdout.WriteString(s); | 
					
						
							| 
									
										
										
										
											2008-09-10 17:11:04 -07:00
										 |  |  | } |