Skip to content

Commit

Permalink
update printf.md (#108)
Browse files Browse the repository at this point in the history
* Update date.md

为date命令添加用法

* Update printf.md

修改了 ‘一个字面上的反斜杠字符’的markdown表示以便显示两个反斜杠;
修改了一个错字;
增加了一些实例;
  • Loading branch information
ZhuangZhu-74 authored and jaywcjlove committed May 23, 2019
1 parent fa7695e commit c693771
Showing 1 changed file with 25 additions and 3 deletions.
28 changes: 25 additions & 3 deletions command/printf.md
Original file line number Diff line number Diff line change
Expand Up @@ -45,7 +45,7 @@ printf(选项)(参数)
* \r 回车(Carriage return)
* \t 水平制表符
* \v 垂直制表符
* \\ 一个字面上的反斜杠字符
* \\\\ 一个字面上的反斜杠字符
* \ddd 表示1到3位数八进制值的字符,仅在格式字符串中有效
* \0ddd 表示1到3位的八进制值字符

Expand All @@ -64,8 +64,30 @@ printf "%-5s %-10s %-4.2f\n" 02 Jack 89.2345
printf "%-5s %-10s %-4.2f\n" 03 Jeff 98.4323
```

* %-5s 格式为左对齐且宽度为5的字符串代替(-表示左对齐),不使用则是又对齐
* %-5s 格式为左对齐且宽度为5的字符串代替(-表示左对齐),不使用则是右对齐
* %-4.2f 格式为左对齐宽度为4,保留两位小数。

### 按行打印数组和关联数组的下标及值

<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ -->
```shell
#!/bin/bash
#声明数组(array)可以不加 'declare -a' 或 'local -a'(在函数内声明的局部变量)
array1=('line1' 'line2')
#声明关联数组(也就是字典)必须加 'declare -A' 或 'local -A'(在函数内声明的局部变量)
declare -A assoc_array1=(['key1']='value1' ['key2']='value2')

printf "%s\n" ${array1[@]}
#line1
#line2
printf "%s\n" ${!array1[@]}
#0
#1
printf "%s\n" ${assoc_array1[@]}
#value2
#value1
printf "%s\n" ${!assoc_array1[@]}
#key2
#key1
```

<!-- Linux命令行搜索引擎:https://jaywcjlove.github.io/linux-command/ -->

0 comments on commit c693771

Please sign in to comment.