mirror of
				https://git.proxmox.com/git/grub2
				synced 2025-10-31 12:27:02 +00:00 
			
		
		
		
	 5e619f408d
			
		
	
	
		5e619f408d
		
	
	
	
	
		
			
			* grub-core/commands/wildcard.c (wildcard_escape): Moved from here ... * grub-core/script/execute.c (wildcard_escape): .. to here. Don't escape dot. * grub-core/commands/wildcard.c (wildcard_unescape): Moved from here ... * grub-core/script/execute.c (wildcard_unescape): .. to here. Don't escape dot. * grub-core/script/execute.c (gettext_append): Always escape. (grub_script_arglist_to_argv): Always handle escaping/unescaping. * grub-core/script/yylex.l: Don't cut away the escaping. * tests/grub_script_echo1.in: Add tests with wildcard.
		
			
				
	
	
		
			184 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			184 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| #! @builddir@/grub-shell-tester
 | |
| 
 | |
| # Run GRUB script in a Qemu instance
 | |
| # Copyright (C) 2010  Free Software Foundation, Inc.
 | |
| #
 | |
| # GRUB is free software: you can redistribute it and/or modify
 | |
| # it under the terms of the GNU General Public License as published by
 | |
| # the Free Software Foundation, either version 3 of the License, or
 | |
| # (at your option) any later version.
 | |
| #
 | |
| # GRUB is distributed in the hope that it will be useful,
 | |
| # but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 | |
| # GNU General Public License for more details.
 | |
| #
 | |
| # You should have received a copy of the GNU General Public License
 | |
| # along with GRUB.  If not, see <http://www.gnu.org/licenses/>.
 | |
| 
 | |
| # simple arguments
 | |
| echo one two three
 | |
| echo "one two three"
 | |
| echo 'one two three'
 | |
|  echo "one two three"
 | |
|    echo "one two three"
 | |
| 	echo "one two three"
 | |
| 
 | |
| # empty arguments
 | |
| echo a "" b
 | |
| echo a '' b
 | |
| 
 | |
| echo a $foo b
 | |
| echo a ${foo} b
 | |
| 
 | |
| echo a "$foo" b
 | |
| echo a "${foo}" b
 | |
| 
 | |
| # multi-part arguments
 | |
| echo one"two"three
 | |
| echo one${two}three
 | |
| echo one"two"$three
 | |
| 
 | |
| echo one'two'three
 | |
| echo one${two}three
 | |
| echo one'two'$three
 | |
| 
 | |
| echo one'two'three"four"five${six}seven$eight
 | |
| 
 | |
| 
 | |
| foo=bar
 | |
| echo $foo ${foo}
 | |
| echo "$foo" "${foo}"
 | |
| echo '$foo' '${foo}'
 | |
| echo a$foob a${foo}b
 | |
| echo ab"cd"ef$foo'gh'ij${foo}kl\ mn\"op\'qr\$st\(uv\<wx\>yz\)
 | |
| 
 | |
| foo=c
 | |
| bar=h
 | |
| echo e"$foo"${bar}o
 | |
| e"$foo"${bar}o hello world
 | |
| 
 | |
| foo=echo
 | |
| $foo 1234
 | |
| 
 | |
| echo "one
 | |
| "
 | |
| echo "one
 | |
| \""
 | |
| echo "one
 | |
| two"
 | |
| 
 | |
| echo one"two
 | |
| "three
 | |
| echo one"two
 | |
| \""three
 | |
| echo one"two
 | |
| \"three\"
 | |
| four"
 | |
| 
 | |
| 
 | |
| echo 'one
 | |
| '
 | |
| echo 'one
 | |
| \'
 | |
| echo 'one
 | |
| two'
 | |
| echo one'two
 | |
| '
 | |
| echo one'two
 | |
| \'
 | |
| echo one'two
 | |
| \'three
 | |
| 
 | |
| echo "one\
 | |
| "
 | |
| echo "one\
 | |
| \""
 | |
| echo "one\
 | |
| two"
 | |
| 
 | |
| # echo "one\
 | |
| # two"
 | |
| # echo 'one\
 | |
| # two'
 | |
| # echo foo\
 | |
| # bar
 | |
| # \
 | |
| # echo foo
 | |
| # echo "one
 | |
| #
 | |
| # two"
 | |
| 
 | |
| echo "one
 | |
|  "
 | |
| echo "one
 | |
|  \""
 | |
| echo "one
 | |
|  two"
 | |
| 
 | |
| echo one"two
 | |
|  "three
 | |
| echo one"two
 | |
|  \""three
 | |
| echo one"two
 | |
| \"three\"
 | |
|  four"
 | |
| 	
 | |
| echo 'one
 | |
|  '
 | |
| echo 'one
 | |
|  \'
 | |
| echo 'one
 | |
|  two'
 | |
| echo one'two
 | |
|  '
 | |
| echo one'two
 | |
|  \'
 | |
| echo one'two
 | |
|  \'three
 | |
| 
 | |
| echo "one\
 | |
|  "
 | |
| echo "one\
 | |
|  \""
 | |
| echo "one\
 | |
|  two"
 | |
| 
 | |
| echo one \
 | |
|  two
 | |
| 
 | |
| echo one x\
 | |
|  two
 | |
| 
 | |
| echo one x\
 | |
| "x" two
 | |
| echo one x\
 | |
| 'x' two
 | |
| echo one x\
 | |
| \\ two
 | |
| 
 | |
| echo one x\
 | |
| \
 | |
| x
 | |
| 
 | |
| echo one x\
 | |
| 
 | |
| 
 | |
| 
 | |
| echo one x\
 | |
| ;
 | |
| 
 | |
| echo one x\
 | |
| $var
 | |
| 
 | |
| 
 | |
| if test x$grubshell = xyes; then insmod regexp; fi
 | |
| echo /boot/grub/i386-pc/normal.mod
 | |
| echo x\\y
 | |
| echo x\*y
 | |
| echo x\\
 | |
| echo x\\\\
 | |
| echo x\\\\y
 | |
| 
 | |
| 
 |