亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
12下一頁
最近訪問板塊 發(fā)新帖
查看: 8661 | 回復(fù): 13
打印 上一主題 下一主題

[文本處理] 怎樣設(shè)置shell腳本只執(zhí)行一次? [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2014-06-19 17:38 |只看該作者 |倒序瀏覽
各位大俠,我寫了個shell腳本,想設(shè)置成只能執(zhí)行一次(再執(zhí)行會有錯誤),請問該在腳本里如何寫呢?

論壇徽章:
5
未羊
日期:2014-08-04 16:15:21天秤座
日期:2014-08-13 13:52:372015年辭舊歲徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:112015亞冠之浦和紅鉆
日期:2015-06-29 15:30:48
2 [報告]
發(fā)表于 2014-06-19 17:59 |只看該作者
腳本最后追加一行
  1. sed -i '1i exit 0' $0
復(fù)制代碼

論壇徽章:
39
辰龍
日期:2013-08-21 15:45:192015亞冠之廣州富力
日期:2015-05-12 16:34:52亥豬
日期:2015-03-03 17:22:00申猴
日期:2015-03-03 17:21:37未羊
日期:2014-10-10 13:45:41戌狗
日期:2014-06-17 09:53:29巨蟹座
日期:2014-06-12 23:17:17雙魚座
日期:2014-06-10 12:42:44寅虎
日期:2014-06-09 12:52:172015亞冠之卡爾希納薩夫
日期:2015-05-24 15:24:35黃金圣斗士
日期:2015-12-02 17:25:0815-16賽季CBA聯(lián)賽之吉林
日期:2017-06-24 16:43:52
3 [報告]
發(fā)表于 2014-06-19 18:23 |只看該作者
回復(fù) 1# fbt045


    執(zhí)行完就自我刪除!!!
在腳本最后加一句:
  1. rm -f $0
復(fù)制代碼

論壇徽章:
0
4 [報告]
發(fā)表于 2014-06-19 18:47 |只看該作者
回復(fù) 3# 關(guān)陰月飛

老大教育我,不要輕易使用rm命令,盡量使用mv命令,所以我現(xiàn)在這么刪除文件:
mv $0 /dev/shm
reboot -f
后來服務(wù)器天天重啟,后來老大瘋了。

論壇徽章:
5
未羊
日期:2014-08-04 16:15:21天秤座
日期:2014-08-13 13:52:372015年辭舊歲徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:56:112015亞冠之浦和紅鉆
日期:2015-06-29 15:30:48
5 [報告]
發(fā)表于 2014-06-19 18:51 |只看該作者
3樓和4樓都是壞淫~~~~

論壇徽章:
2
黑曼巴
日期:2017-09-18 16:16:1315-16賽季CBA聯(lián)賽之廣東
日期:2017-10-25 16:20:16
6 [報告]
發(fā)表于 2014-06-19 21:42 |只看該作者
你們好壞

論壇徽章:
2
白羊座
日期:2013-11-18 19:52:42辰龍
日期:2014-09-07 07:46:06
7 [報告]
發(fā)表于 2014-06-19 22:23 |只看該作者
本帖最后由 damcool 于 2014-06-19 22:23 編輯

  1. PROGNAME=$(basename "$0")
  2. $PIDFILE="/var/pid/${PROGNAME}.pid"
  3. while [ $(mkdir .se &>/dev/null; echo $?) -ne 0 ]; do sleep 1;done
  4. pid=$(cat $PIDFILE 2>/dev/null)
  5. pid=$(kill -s 0 $pid &>/dev/null; echo $?)
  6. [ $pid -ne 0 ] && echo $$ > $PIDFILE
  7. rm -rf .se
  8. [ $pid -eq 0 ] && exit
復(fù)制代碼

論壇徽章:
0
8 [報告]
發(fā)表于 2014-06-20 00:53 |只看該作者
回復(fù) 7# damcool

一、.se目錄的作用是?用.pid文件是否存在就好了吧?
二、刪除空目錄似乎用rmdir更加安全。

論壇徽章:
0
9 [報告]
發(fā)表于 2014-06-20 09:09 |只看該作者
感謝各位回復(fù),看來方法很多,我寫了個建空文件的方法
path=`pwd`

if [ -f $path/runned];then
                {
                                echo "This script can only excute once! you have runned it!"
                                exit
                }
else
                touch $path/runned
fi

論壇徽章:
2
白羊座
日期:2013-11-18 19:52:42辰龍
日期:2014-09-07 07:46:06
10 [報告]
發(fā)表于 2014-06-20 09:59 |只看該作者
空目錄用來作為讀寫pid文件的進程鎖。
pid文件內(nèi)的pid號是否存在是判斷關(guān)鍵,如果進程被異常中止,該方法也可正常有效。反之可能死鎖。
仔細想想是不是這個道理?
用戶名注冊后不能更改 發(fā)表于 2014-06-20 00:53
回復(fù) 7# damcool

一、.se目錄的作用是?用.pid文件是否存在就好了吧?
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP