本文介绍3种不同的方法创建随机缓存文件名。在编写需要创建唯一的缓存文件的脚本时非常有用。
1.使用$RANDOM shell变量
在控制台执行如下命令
echo $RANDOM
每次都获得一个随机数,借用这个变量可用来生成一个随机的文件名
#!/bin/bashecho "List of temporary files : "for i in 1 2 3 4 5do FILE="/tmp/$(basename $0).$RANDOM.txt" echo $FILE # show file name > $FILE # create filesdone
2.使用$$变量
这是一个经典的方法,$$变量返回当前进程的进程号,对于整个系统来说这是一个唯一数字。
#!/bin/bashTFILE="/tmp/$(basename $0).$$.tmp"ls > $TFILEecho "See diretory listing in $TFILE"
3.使用mktemp和tempfile命令
通过mktemp和tempfile命令是最佳的方式
$ mktemp
输出
/tmp/tmp.IAnO5O
或者
$ tempfile
输出
/tmp/IAnO5O
当然还能生成随机文件夹
$ mktemp -d$ tempfile -d
参考阅读
- Shell scripting (BASH) : How to create temporary random file name
原文地址:Bash如何创建随机文件名, 感谢原作者分享。 生活的最大悲剧不是失败,而是一个人已经习惯于失败。