【Bash百宝箱】shell内建命令之times、umask、unset

1、times

在shell中,内建(builtin)命令times,格式如下:

times

times命令用于显示shell及其子进程所使用的累积用户时间和系统时间,退出状态为0。

times命令用例如下(启动一个新的shell终端开始执行):

$ times
0m0.024s 0m0.004s
0m0.000s 0m0.000s
$ times
0m0.024s 0m0.004s
0m0.000s 0m0.000s
$ echo "sleep 2" > times.test
$ times
0m0.032s 0m0.004s
0m0.000s 0m0.000s
$ bash times.test 
$ times
0m0.040s 0m0.004s
0m0.000s 0m0.000s
$ source times.test 
$ times
0m0.044s 0m0.008s
0m0.000s 0m0.000s
$ uname
Linux
$ times
0m0.044s 0m0.008s
0m0.000s 0m0.000s
$ man bash > /dev/null
$ times
0m0.052s 0m0.008s
0m0.224s 0m0.028s
$ man bash > /dev/null
$ times
0m0.052s 0m0.008s
0m0.504s 0m0.068s
$ ls > /dev/null
$ times
0m0.052s 0m0.012s
0m0.504s 0m0.068s
$ ls > /dev/null
$ times
0m0.056s 0m0.012s
0m0.504s 0m0.068s
$ times
0m0.056s 0m0.012s
0m0.504s 0m0.068s

2、umask

在shell中,内建(builtin)命令umask,格式如下:

umask [-p] [-S] [mode]

umask命令把shell中创建文件的掩码设置为mode,包括user(u)、group(g)和other(o)三种权限,文件权限为0777减去对应位置的掩码,例如,当前掩码为0002时,通过mkdir命令新建一个文件夹,该文件夹的权限为0775。mode可以是八进制,如”0012“,也可以是字符,如”u=rwx,g=rw,o=rx“,mode类似于命令chmod的参数。当不指定mode时,选项”-p“以八进制形式显示当前掩码,选项”-S“以字符形式显示当前掩码。

umask命令用例如下:

$ umask
0002
$ umask -p
umask 0002
$ umask -S
u=rwx,g=rwx,o=rx

3、unset

在shell中,内建(builtin)命令unset,格式如下:

unset [-fv] [-n] [name ...]

unset命令用于删除shell中的变量和函数,选项”-f“删除函数,选项”-v“删除变量,不指定任何选项时默认删除变量。对于选项”-n“,用于变量为引用变量的情况,只删除变量name本身而不删除它引用的另一个变量,否则同时删除变量name本身和它引用的另一个变量,下面举例说明这种情况。

$ foo=123
$ declare -n bar=foo
$ echo $bar
123
$ unset bar
$ echo $bar

$ echo $foo

$ foo=123
$ declare -n bar=foo
$ echo $bar
123
$ unset -n bar
$ echo $bar

$ echo $foo
123

不能删除只读的变量和函数。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值