5344
5432
1万
管理员
本站资源如失效,请点击反馈!
$ touch /tmp/info.txt$ ls -l /tmp/info.txt-rw-r--r-- 1 ruanyf ruanyf 0 12月 28 17:12 /tmp/info.txt
创建前检查文件是否已经存在。 确保临时文件已成功创建。 临时文件必须有权限的限制。 临时文件要使用不可预测的文件名。 脚本退出时,要删除临时文件(使用trap命令)。
$ mktemp/tmp/tmp.4GcsWSG4vj$ ls -l /tmp/tmp.4GcsWSG4vj-rw------- 1 ruanyf ruanyf 0 12月 28 12:49 /tmp/tmp.4GcsWSG4vj
#!/bin/bashTMPFILE=$(mktemp)echo "Our temp file is $TMPFILE"
#!/bin/bashTMPFILE=$(mktemp) || exit 1echo "Our temp file is $TMPFILE"
#!/bin/bashtrap 'rm -f "$TMPFILE"' EXITTMPFILE=$(mktemp) || exit 1echo "Our temp file is $TMPFILE"
$ mktemp -d/tmp/tmp.Wcau5UjmN6
$ mktemp -p /home/ruanyf//home/ruanyf/tmp.FOKEtvs2H3
$ mktemp -t mytemp.XXXXXXX/tmp/mytemp.yZ1HgZV
$ trap -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT ... ...
$ trap [动作] [信号]
HUP:编号1,脚本与所在的终端脱离联系。 INT:编号2,用户按下 Ctrl + C,意图让脚本中止运行。 QUIT:编号3,用户按下 Ctrl + 斜杠,意图退出脚本。 KILL:编号9,该信号用于杀死进程。 TERM:编号15,这是kill命令发出的默认信号。 EXIT:编号0,这不是系统信号,而是 Bash 脚本特有的信号,不管什么情况,只要退出脚本就会产生。
$ trap 'rm -f "$TMPFILE"' EXIT
#!/bin/bashtrap 'rm -f "$TMPFILE"' EXITTMPFILE=$(mktemp) || exit 1ls /etc > $TMPFILEif grep -qi "kernel" $TMPFILE; then echo 'find'fi
function egress { command1 command2 command3}trap egress EXIT
使用道具 举报
本版积分规则 发表回复 回帖后跳转到最后一页
手机版|飞雪团队
GMT+8, 2024-11-24 04:07 , Processed in 0.066412 second(s), 24 queries , Gzip On.
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.