20 lines
		
	
	
		
			346 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
		
		
			
		
	
	
			20 lines
		
	
	
		
			346 B
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| 
								 | 
							
								'use strict';
							 | 
						||
| 
								 | 
							
								var shebangRegex = require('shebang-regex');
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								module.exports = function (str) {
							 | 
						||
| 
								 | 
							
									var match = str.match(shebangRegex);
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									if (!match) {
							 | 
						||
| 
								 | 
							
										return null;
							 | 
						||
| 
								 | 
							
									}
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									var arr = match[0].replace(/#! ?/, '').split(' ');
							 | 
						||
| 
								 | 
							
									var bin = arr[0].split('/').pop();
							 | 
						||
| 
								 | 
							
									var arg = arr[1];
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
									return (bin === 'env' ?
							 | 
						||
| 
								 | 
							
										arg :
							 | 
						||
| 
								 | 
							
										bin + (arg ? ' ' + arg : '')
							 | 
						||
| 
								 | 
							
									);
							 | 
						||
| 
								 | 
							
								};
							 |