示例功能:
count() {# Usage: count /path/to/dir/*#count /path/to/dir/*/printf '%sn' "$#"}用法示例:
# Count all files in dir.$ count ~/Downloads/*232# Count all dirs in dir.$ count ~/Downloads/*/45# Count all jpg files in dir.$ count ~/Pictures/*.jpg64创建一个空文件替代touch 。
# Shortest.>file# Longer alternatives::>fileecho -n >fileprintf '' >file提取两个标记之间的线条示例功能:
extract() {# Usage: extract file "opening marker" "closing marker"while IFS=$'n' read -r line; do[[ $extract && $line != "$3" ]] &&printf '%sn' "$line"[[ $line == "$2" ]] && extract=1[[ $line == "$3" ]] && extract=done < "$1"}用法示例:
# Extract code blocks from MarkDown file.$ extract ~/projects/pure-bash/README.md '```sh' '```'# Output here...文件路径获取文件路径的目录名称替代dirname命令 。
示例功能:
dirname() {# Usage: dirname "path"printf '%sn' "${1%/*}/"}用法示例:
$ dirname ~/Pictures/Wallpapers/1.jpg/home/black/Pictures/Wallpapers/$ dirname ~/Pictures/Downloads//home/black/Pictures/获取文件路径的基本名称替代basename命令 。
示例功能:
basename() {# Usage: basename "path": "${1%/}"printf '%sn' "${_##*/}"}用法示例:
$ basename ~/Pictures/Wallpapers/1.jpg1.jpg$ basename ~/Pictures/Downloads/Downloads变量使用变量分配和访问变量$ hello_world="value"# Create the variable name.$ var="world"$ ref="hello_$var"# Print the value of the variable name stored in 'hello_$var'.$ printf '%sn' "${!ref}"value或者,在bash4.3+上:
$ hello_world="value"$ var="world"# Declare a nameref.$ declare -n ref=hello_$var$ printf '%sn' "$ref"value根据另一个变量命名变量$ var="world"$ declare "hello_$var=value"$ printf '%sn' "$hello_world"valueESCAPE序列与流行的看法相反,使用原始逃逸序列没有问题 。使用tput与手动打印相同的ANSI序列的摘要 。更糟糕的是,tput实际上并不便携 。有许多tput变体,每个变体都有不同的命令和语法(
推荐阅读
- 从linux内核看io_uring的实现
- 同样是内容分发,filecoin的Myel与传统CDN有哪些区别?
- 解决内网服务搭建太多,记不住网址的问题 | 内网应用仪表盘
- MySql索引 | 什么是索引呢?索引是什么样子的?
- 31个必备的python字符串方法,建议收藏
- html渲染和模板的使用
- 含答案 全网最全的Java岗网络编程+异常处理面试题
- 油炸饼的做法
- 油丝饼。的做法
- 政和工夫红茶存放多久,政和工夫红茶
