首页 > 代码库 > Linux Bash 脚本:自定义延迟代码块(裸数据保存方案)

Linux Bash 脚本:自定义延迟代码块(裸数据保存方案)

结合 alias read 用法,可以保存一些将要延迟运行的脚本,或者数据(字符串不被扩展)到一个变量中,以备后用。

$ alias BEGIN='read -d "" $1 <<"END"'

$ BEGIN block1
> ls -la
> END

$ eval $block1
total 10
drwxr-xr-x    1 Xiaoqian Administ     4096 Nov  5 22:42 ./
drwxr-xr-x   12 Xiaoqian Administ     4096 Nov  5 22:31 ../
-rw-r--r--    1 Xiaoqian Administ        3 Oct 31 16:26 .gitignore
-rw-r--r--    1 Xiaoqian Administ      435 Oct 31 16:26 README.md
drwxr-xr-x    2 Xiaoqian Administ        0 Nov  5 22:32 bin/
-rwxr-xr-x    1 Xiaoqian Administ      792 Oct 31 16:26 meditate

完成,其实block1也就是一个裸数据,一个BEGIN ... END块包含任意字符文本,可以理解为 block1="ls -la",只是这里保证了文本不被shell引擎扩展。


Linux Bash 脚本:自定义延迟代码块(裸数据保存方案)