seq 和 let
seq
seq :输出序列化的一串整数
语法格式
seq 选项 尾数
输出默认从1开始到位数之间的所有整数
seq 选项 首数 尾数
输出从首数开始到尾数结束的所有整数
seq 选项 首数 增量 尾数
输出从首数开始到尾数结束,每隔一个增量输出一个整数,类似于等差数列
-f 使用printf 样式的浮点格式
-s 使用指定字符串分割数字,默认换行符
-w 在列前添加0 使得宽度相同
示例:
输出1到5之间的数字
[root@localhost ~]# seq 5
1
2
3
4
5
指定空格符为分隔符输出2到8
[root@localhost ~]# seq -s ’ ’ 2 8
2 3 4 5 6 7 8
定空格符为分隔符,输出10以内的奇数
[root@localhost ~]# seq -s ’ ’ 1 2 10
1 3 5 7 9
使用-f指定输出格式
[root@localhost ~]# seq -f “%2g” 8 12
8
9
10
11
12
说明:上述指令使用-f来指定输出格式,%后面表示的是数字的位数,默认为%g,示例中的%2g表示两位输出,不足两位默认补空格
指定输出位数为2位,且不足部分补0
[root@localhost ~]# seq -f “%02g” 8 12
08
09
10
11
12
在输出的序列前加入自定义字符串
[root@localhost ~]# seq -f “aaa%2g” 1 5
aaa 1
aaa 2
aaa 3
aaa 4
aaa 5
[root@localhost ~]# seq -f “aaa%02g” 1 5
aaa01
aaa02
aaa03
aaa04
aaa05
保留小数后3位
[root@localhost ~]# seq -f “%.3f” 1 5
1.000
2.000
3.000
4.000
5.000
输出数字等宽,默认补0
[root@localhost ~]# seq -w 1 14
01
02
03
04
05
06
07
08
09
10
11
12
13
14
let
语法格式
let 运算方法
let 参数 [参数]
示例:
加法
[root@localhost ~]# let a=3+4
[root@localhost ~]# echo $a
7
自加运算
[root@localhost ~]# let a=3+4
[root@localhost ~]# echo $a
7
[root@localhost ~]# let a++
[root@localhost ~]# echo $a
8
[root@localhost ~]#
自减运算
[root@localhost ~]# echo $a
8
[root@localhost ~]# let a--
[root@localhost ~]# echo $a
7
[root@localhost ~]#
幂运算
[root@localhost ~]# echo $a
7
[root@localhost ~]# let a=a**3
[root@localhost ~]# echo $a
343
颜色设置
在PS1中设置字符颜色的格式为:[\e[F;Bm]…[\e[0m],其中“F“为字体颜色,编号为30-37,“B”为背景颜色,编号为40-47,[\e[0m]作为颜色设定的结束。
颜色对照表:
F B
30 40 黑色
31 41 红色
32 42 绿色
33 43 黄色
34 44 蓝色
35 45 紫红色
36 46 青蓝色
37 47 白色
\d :代表日期,格式为weekday month date,例如:“Mon Aug 1”
\H :完整的主机名称。例如:我的机器名称为:fc4.linux,则这个名称就是fc4.linux
\h :仅取主机的第一个名字,如上例,则为fc4,.linux则被省略
\t :显示时间为24小时格式,如:HH:MM:SS
\T :显示时间为12小时格式
\A :显示时间为24小时格式:HH:MM
\u :当前用户的账号名称
\v :BASH的版本信息
\w :完整的工作目录名称。家目录会以 ~代替
\W :利用basename取得工作目录名称,所以只会列出最后一个目录
:下达的第几个命令
$ :提示字符,如果是root时,提示符为:# ,普通用户则为:$
示例:
PS1="\[\e[37;1m\][\[\e[31;1m\]\u\[\e[34;1m\]@\[\e[32;1m\]\h \[\e[31;1m\]\w \[\e[33;1m\]\t\[\e[37;1m\]]\[\e[32;1m\]\\$\[\e[m\]"
或者 echo -e “\033[ 33mroot”