⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 heredoc.t

📁 一个开放源代码的 AT&T 的 Korn Shell 的复制品, 支持大多数 ksh89 的特性。
💻 T
字号:
name: heredoc-1description:	Check ordering/content of redundent here documents.stdin:	cat << EOF1 << EOF2 	hi	EOF1	there	EOF2expected-stdout:	there---name: heredoc-2description:	Check quoted here-doc is protected.stdin:	a=foo	cat << 'EOF'	hi\	there$a	stuff	EO\	F	EOFexpected-stdout:	hi\	there$a	stuff	EO\	F---name: heredoc-3description:	Check that newline isn't needed after heredoc-delimiter marker.stdin: !	cat << EOF	hi	there	EOFexpected-stdout:	hi	there---name: heredoc-4description:	Check that an error occurs if the heredoc-delimiter is missing.stdin: !	cat << EOF	hi	thereexpected-exit: e > 0expected-stderr-pattern: /.*/---name: heredoc-5description:	Check that backslash quotes a $, ` and \ and kills a \newlinestdin: 	a=BAD	b=ok	cat << EOF	h\${a}i	h\\${b}i	th\`echo not-run\`ere	th\\`echo is-run`ere	fol\\ks	more\\	last \	line	EOFexpected-stdout:	h${a}i	h\oki	th`echo not-run`ere	th\is-runere	fol\ks	more\	last line---name: heredoc-6description:	Check that \newline in initial here-delim word doesn't imply	a quoted here-doc.stdin: 	a=i	cat << EO\	F	h$a	there	EOFexpected-stdout:	hi	there---name: heredoc-7description:	Check that double quoted $ expressions in here delimiters are	not expanded and match the delimiter.	POSIX says only quote removal is applied to the delimiter.stdin: 	a=b	cat << "E$a"	hi	h$a	hb	E$a	echo doneexpected-stdout:	hi	h$a	hb	done---name: heredoc-8description:	Check that double quoted escaped $ expressions in here	delimiters are not expanded and match the delimiter.	POSIX says only quote removal is applied to the delimiter	(\ counts as a quote).stdin: 	a=b	cat << "E\$a"	hi	h$a	h\$a	hb	h\b	E$a	echo doneexpected-stdout:	hi	h$a	h\$a	hb	h\b	done---name: heredoc-tmpfile-1description:	Check that heredoc temp files aren't removed too soon or too late.	Heredoc in simple command.stdin:	TMPDIR=$PWD	eval '		cat <<- EOF		hi		EOF		for i in a b ; do			cat <<- EOF			more			EOF		done	    ' &	sleep 1	echo Left overs: *expected-stdout:	hi	more	more	Left overs: *---name: heredoc-tmpfile-2description:	Check that heredoc temp files aren't removed too soon or too late.	Heredoc in function, multiple calls to function.stdin:	TMPDIR=$PWD	eval '		foo() {			cat <<- EOF			hi			EOF		}		foo		foo	    ' &	sleep 1	echo Left overs: *expected-stdout:	hi	hi	Left overs: *---name: heredoc-tmpfile-3description:	Check that heredoc temp files aren't removed too soon or too late.	Heredoc in function in loop, multiple calls to function.stdin:	TMPDIR=$PWD	eval '		foo() {			cat <<- EOF			hi			EOF		}		for i in a b; do			foo			foo() {				cat <<- EOF				folks $i				EOF			}		done		foo	    ' &	sleep 1	echo Left overs: *expected-stdout:	hi	folks b	folks b	Left overs: *---name: heredoc-tmpfile-4description:	Check that heredoc temp files aren't removed too soon or too late.	Backgrounded simple command with here docstdin:	TMPDIR=$PWD	eval '		cat <<- EOF &		hi		EOF	    ' &	sleep 1	echo Left overs: *expected-stdout:	hi	Left overs: *---name: heredoc-tmpfile-5description:	Check that heredoc temp files aren't removed too soon or too late.	Backgrounded subshell command with here docstdin:	TMPDIR=$PWD	eval '	      (		sleep 1	# so parent exits		echo A		cat <<- EOF		hi		EOF		echo B	      ) &	    ' &	sleep 2	echo Left overs: *expected-stdout:	A	hi	B	Left overs: *---name: heredoc-tmpfile-6description:	Check that heredoc temp files aren't removed too soon or too late.	Heredoc in pipeline.stdin:	TMPDIR=$PWD	eval '		cat <<- EOF | sed "s/hi/HI/"		hi		EOF	    ' &	sleep 1	echo Left overs: *expected-stdout:	HI	Left overs: *---name: heredoc-tmpfile-7description:	Check that heredoc temp files aren't removed too soon or too late.	Heredoc in backgrounded pipeline.stdin:	TMPDIR=$PWD	eval '		cat <<- EOF | sed 's/hi/HI/' &		hi		EOF	    ' &	sleep 1	echo Left overs: *expected-stdout:	HI	Left overs: *---name: heredoc-tmpfile-8description:	Check that heredoc temp files aren't removed too soon or too late.	Heredoc in function, backgrounded call to function.stdin:	TMPDIR=$PWD	# Background eval so main shell doesn't do parsing	eval '		foo() {			cat <<- EOF			hi			EOF		}		foo		# sleep so eval can die		(sleep 1; foo) &		(sleep 1; foo) &		foo	    ' &	sleep 2	echo Left overs: *expected-stdout:	hi	hi	hi	hi	Left overs: *---

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -