深入探索Shell脚本与网络文件传输
1. 临时文件管理
在编写Shell脚本时,有时需要创建临时文件来收集输出,以供后续命令使用。创建这类文件时,要确保文件名足够独特,防止其他程序意外写入。一种简单的方法是在文件名中使用Shell的进程ID( $$ ),但如果要确保不会产生冲突, mktemp 工具通常是更好的选择。
1.1 mktemp命令的使用
mktemp 命令的参数是一个模板,它会将 XXXXXX 替换为一组唯一的字符,并创建一个同名的空文件。以下脚本展示了如何使用 mktemp 命令创建临时文件名,该脚本会显示过去两秒内发生的设备中断信息:
#!/bin/sh
TMPFILE1=$(mktemp /tmp/im1.XXXXXX)
TMPFILE2=$(mktemp /tmp/im2.XXXXXX)
cat /proc/interrupts > $TMPFILE1
sleep 2
cat /proc/interrupts > $TMPFILE2
diff $TMPFILE1 $TMPFILE2
rm -f $TMPFILE1 $TMPFILE2
此脚本使用变量名存储文件名,这样如果需要更改文件名,只需修改一行代码。
1.2 注意事项
- 并非所有Unix系统都自带
mktemp工具。如果遇到可移植性问题,最好为操
超级会员免费看
订阅专栏 解锁全文
80

被折叠的 条评论
为什么被折叠?



