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引擎扩展。

时间: 2024-12-24 13:28:20

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 Xi

Linux Bash脚本基本语法知识

写在前面:如果此文有幸被某位朋友看见并发现有错的地方,希望批评指正.如有不明白的地方,愿可一起探讨. 前提:读者能够基本使用一款文本编辑器以及了解文件的权限概念. 准备工作 在/home目录创建script文件用于保存所有的脚本程序: # mkdir /home/script # cd /home/script/ Bash脚本的基本输入输出 第一个bash脚本: # vim ./hello-world.sh 说明: "#!"是一个约定标记,它告诉系统这个脚本需要什么解释器来执行 作为可

linux Bash脚本基础符号总结 (一)

1.初识Bash 首先编译一个简单的bash vim hello.sh 使用vim编辑hello.sh ,输入如下代码并保存: #!/bin/bash echo hello word 运行Bash脚本的方式: # 使用shell来执行 $ sh hello.sh # 使用bash来执行 $ bash hello.sh 还可以让脚本本身就具有可执行权限,通过chmod命令可以修改: # 赋予脚本的所有者该执行权限,允许该用户执行该脚本 $ chmod u+x hello.sh # 执行命令,这将使

Linux Bash脚本编程语言中的美学与哲学

我承认,我再一次地当了标题党.但是不可否认,这一定是一篇精华随笔.在这一篇中,我将探讨Bash脚本语言中的美学与哲学. 这不是一篇Bash脚本编程的教程,但是却能让人更加深入地了解Bash脚本编程,更加快速地学习Bash脚本编程. 阅读这篇随笔,不需要你有Bash编程的经验,但一定要和我一样热衷于探索各种编程语言的本质,感悟它们的魅力. 其实早就想写关于Bash的东西了. 我们平时喜欢对编程语言进行分类,比如面向过程的编程语言.面向对象的编程语言.函数式编程语言等等.在我心中,我认为Bash就是

Python 代码块 小数据池

一  代码块 什么是代码块??? Python程序是由代码块构造的.先举一个例子: 1 for i in '12334567': 2 print(i) 1 def func(): 2 print('Hello,world!') 1 class A: 2 name = 'colin' 从上面的例子可以称为代码块,虽然上面的缩进的内容都叫代码块,但是他们并不是python中严格定义的代码块. 那么,python中真正意义上的代码块又怎么定义? 因此,我们定义:一个模块,一个函数,一个类,一个文件等都

pyhon学习第六天 代码块,小数据池(缓存机制,驻留机制),is == id =,字符编码

1.代码块 能够实现某项功能的:模块,函数,类,文件 ##在python的交互模式下,一行代码就是一个代码块分别储存在不同文件中 2. id is ==和= =是赋值 ==比较两边数据内容是否相等 is 比较内存地址是否一致(内存里的id都是唯一的) id() 查看数据的id地址 3.小数据池(缓存机制,驻留机制): 小数据池是python对内存做的一个优化 优化内容:python将-5到256的整数.以及一定规律的字符串提前在内存找那个创建了固定的储存空间 适用小数据池的数据类型:*****

HBuilder CSS 自定义代码块

1 =begin 2 本文档是CSS代码块的编辑文件.注意不要把其他语言的设置放到css里来. 3 HBuilder可使用ruby脚本来编辑代码块和增强操作命令. 4 1.编辑代码块 5 如果要新增一个代码块,复制如下一段代码到空白行,然后设定参数. 6 'userselect:none'是代码块的显示名字: 7 s.trigger = 'usn' 是设定激活字符,比如输入usn会在代码提示时显示该代码块: 8 s.expansion = '' 是设定该代码块的输出字符,其中$0.$1是光标的停

HBuilder HTML 自定义代码块

1 =begin 2 本文档是HTML代码块的编辑文件.注意不要把其他语言的设置放到html里来. 3 HBuilder可使用ruby脚本来编辑代码块和增强操作命令. 4 1.编辑代码块 5 如果要新增一个代码块,复制如下一段代码到空白行,然后设定参数. 6 'Style'是代码块的显示名字: 7 s.trigger = 'style' 是设定激活字符,比如输入style均会在代码提示时显示该代码块: 8 s.expansion = '' 是设定该代码块的输出字符,其中$0.$1是光标的停留和切

在Xcode中自定义代码块——快速代码

在Xcode中自定义自己的快速代码,很简单,用起来也很方便 首先选择自己想要的自定义的代码块 拖拽到红框的区域松手,会弹出设置窗口 这是我的填写 这里有另外一个技巧,可以给自己想要改变的地方设置成预留字(预留字是我自己随口胡邹的名词) 总之,如果你想把button的title设置成可变的,就在代码块中把 [button setTitle:@"button" forState:UIControlStateNormal]; 改为 [button setTitle:@"<#b