當前位置:首頁 » 編程軟體 » shell腳本crontab

shell腳本crontab

發布時間: 2022-05-26 07:11:14

『壹』 shell中crontab求助

也就是在上班時間每小時執行一次腳本咯。
首先假設腳本是test.sh,路徑是/home/sh,首先給腳本授權,

cd/home/sh
chmod-755test.sh
crontab-e
09-17/60***/home/sh/test.sh

『貳』 crontab能定時執行shell腳本嗎

linux下使用crontab命令被用來提交和管理用戶的需要周期性執行的任務,示例如下:
crontab -e 編輯周期任務

30 21 * * * /etc/init.d/smb restart 每晚的21:30重啟smb

crontab命令說明:
crontab命令被用來提交和管理用戶的需要周期性執行的任務,與windows下的計劃任務類似,當安裝完成操作系統後,默認會安裝此服務工具,並且會自動啟動crond進程,crond進程每分鍾會定期檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。

語法
crontab(選項)(參數)
選項
-e:編輯該用戶的計時器設置;
-l:列出該用戶的計時器設置;
-r:刪除該用戶的計時器設置;
-u<用戶名稱>:指定要設定計時器的用戶名稱。
參數
crontab文件:指定包含待執行任務的crontab文件。

『叄』 怎麼用shell自動創建crontab任務,並且還能自動刪除此條任務,詳細如下:

1、crontab -l檢查
2、crontab -e添加
3、root計劃任務保存的文件是/var/spool/cron/root
4、根據實際情況修改/var/spool/cron/root即可
5、例如,計劃任務保存在/opt/cron.txt裡面
0 4 * * * /tomcat6/bin/startup.sh;
6、在第五行添加或指定字元串
sed -i '5 r cron.txt /var/spool/cron/root
或者
sed -i '/cron.start/r cron.txt' /var/spool/cron/root
7、刪除最後一行
sed -i '$d' /var/spool/cron/root

『肆』 shell腳本中 crontab - 是什麼意思

-表示標准輸入
如果不加這個-,意思是一樣的
查找當前crontab文件,去掉其中包括/root/monit/monit_reset.sh的行

『伍』 如何通過crontab設置腳本自動執行

使用crontab你可以在指定的時間執行一個shell腳本或者一系列Linux命令。例如系統管理員安排一個備份任務使其每天都運行
如何往
cron
中添加一個作業?
#
crontab
–e
0
5
*
*
*
/root/bin/backup.sh
這將會在每天早上5點運行
/root/bin/backup.sh
Cron
各項的描述
以下是
crontab
文件的格式:
{minute}
{hour}
{day-of-month}
{month}
{day-of-week}
{full-path-to-shell-script}
o
minute:
區間為
0

59
o
hour:
區間為0

23
o
day-of-month:
區間為0

31
o
month:
區間為1

12.
1
是1月.
12是12月.
o
Day-of-week:
區間為0

7.
周日可以是0或7.
Crontab
示例
1.

12:01
a.m
運行,即每天凌晨過一分鍾。這是一個恰當的進行備份的時間,因為此時系統負載不大。
1
0
*
*
*
/root/bin/backup.sh
2.
每個工作日(Mon

Fri)
11:59
p.m
都進行備份作業。
59
11
*
*
1,2,3,4,5
/root/bin/backup.sh
下面例子與上面的例子效果一樣:
59
11
*
*
1-5
/root/bin/backup.sh
3.
每5分鍾運行一次命令
*/5
*
*
*
*
/root/bin/check-status.sh
4.
每個月的第一天
1:10
p.m
運行
10
13
1
*
*
/root/bin/full-backup.sh
5.
每個工作日
11
p.m
運行。
0
23
*
*
1-5
/root/bin/incremental-backup.sh
Crontab
選項
以下是
crontab
的有效選項:
o
crontab
–e
:
修改
crontab
文件.
如果文件不存在會自動創建。
o
crontab
–l
:
顯示
crontab
文件。
o
crontab
-r
:
刪除
crontab
文件。
o
crontab
-ir
:
刪除
crontab
文件前提醒用戶。
以上就是crontab命令的具體使用方法了。
自己寫一個腳本試試就可以了,比如一個簡單的復制備份腳本
#!/usr/bin/env
bash
cp
-a
/usr/local/Hadoop
/home/hadoop/hadoop

『陸』 crontab中啟動的shell腳本不能正常運行,但是使用手動執行沒有問題

1、這種情況多數為環境變數載入問題
2、例如你用ls命令,其實依賴PATH環境變數
3、可以改為全路徑,比如/bin/ls
4、或者將環境變數載入到腳本
#!/bin/sh
. ~/.bash_profile
ls -lrt $*

『柒』 shell腳本 手動執行成功,crontab執行缺少數據

sh /usr/local/sbin/gdas/start.sh
改為
source /usr/local/sbin/gdas/start.sh
用sh方式去執行就是另開一個shell去跑,相當於是非同步的,不等start.sh執行完就執行下面的判斷了。用source在當前shell執行該腳本,就是阻塞方式,就不存在此問題了。
建議先手動執行腳本,檢驗無誤了再加入crontab

『捌』 怎把寫好的shell腳本加入到crontab裡面

如果要執行一個每5分鍾執行一次的腳本的話
方法1:
echo
"*/5
*
*
*
*
路徑/腳本shell">>/etc/crontab
系統就會自動執行了
方法2:
1
執行
crontab
-e
2
在vi中編輯
如*/5
*
*
*
*
決定路徑/腳本shell
3保存
系統就會自動執行了,會把執行過程的信息發到你所在的用戶mail
裡面。
mail路徑:/usr/spool/mail/cebzh(用戶名)
。若是你不希望收到這樣的信,請在每一行空一格之後加上
>
/dev/null
2>&1
即可

-------------------------------------
基本格式
:
*****command
分時日月周命令
第1列表示分鍾1~59
(每分鍾用*或者
*/1表示,*/5
代表每5分鍾)
第2列表示小時1~23(0表示0點)
第3列表示日期1~31
第4列表示月份1~12
第5列標識號星期0~6(0表示星期天)
第6列要運行的命令

『玖』 shell腳本crontab導入java配置

進行腳本調用。
環境:linux操作系統、用戶:普通用戶(無root許可權)、系統java web(ssh框架)目標:通過crontab定時每天1點執行系統中的action方法,該action方法調用介面,把系統中特定信息上傳到另一系統。現假設action方法已經寫好,目前要做的就是配置crontab調用action。思路:創建shell腳本,調用java;通過crontab定時調用shell腳本。

『拾』 shell如何定義crontab

Crontab是UNIX系統下的定時任務觸發器,其使用者的許可權記載在下列兩個文件中:

文件

含義

/etc/cron.deny

該文件中所列的用戶不允許使用Crontab命令

/etc/cron.allow

該文件中所列的用戶允許使用Crontab命令

/var/spool/cron/

是所有用戶的crontab文件

/var/spool/cron/crontabs
/var/spool/cron/crontabs
Crontab命令的格式為:crontab –l|-r|-e|-i [username],其參數含義如表一:

參數名稱

含義

示例

-l

顯示用戶的Crontab文件的內容

crontabl –l

-i

刪除用戶的Crontab文件前給提示

crontabl -ri

-r

從Crontab目錄中刪除用戶的Crontab文件

crontabl -r

-e

編輯用戶的Crontab文件

crontabl -e

用戶所建立的Crontab文件存於/var/spool/cron中,其文件名與用戶名一致。
它的格式共分為六段,前五段為時間設定段,第六段為所要執行的命令段,
格式如下:* * * * *
其時間段的含義如表二:



含義

取值范圍

第一段

代表分鍾

0—59

第二段

代表小時

0—23

第三段

代表日期

1—31

第四段

代表月份

1—12

第五段

代表星期幾,0代表星期日

0—6

名稱 : crontab
使用許可權 : 所有使用者
使用方式 :
crontab [ -u user ] file
crontab [ -u user ] { -l | -r | -e }
說明 :
crontab 是用來讓使用者在固定時間或固定間隔執行程序之用,換句話說,也就是類似使用者的時程表。-u user 是指設定指定 user 的時程表,這個前提是你必須要有其許可權(比如說是 root)才能夠指定他人的時程表。如果不使用 -u user 的話,就是表示設定自己的時程表。
餐數 :
-e : 執行文字編輯器來設定時程表,內定的文字編輯器是 VI,如果你想用別的文字編輯器,則請先設定 VISUAL 環境變數來指定使用那個文字編輯器(比如說 setenv VISUAL joe)
-r : 刪除目前的時程表
-l : 列出目前的時程表
時程表的格式如下 :
f1 f2 f3 f4 f5 program

其中 f1 是表示分鍾,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執行的程序。
當 f1 為 * 時表示每分鍾都要執行 program,f2 為 * 時表示每小時都要執行程序,其餘類推
當 f1 為 a-b 時表示從第 a 分鍾到第 b 分鍾這段時間內要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其餘類推
當 f1 為 */n 時表示每 n 分鍾個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其餘類推
當 f1 為 a, b, c,... 時表示第 a, b, c,... 分鍾要執行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要執行,其餘類推
使用者也可以將所有的設定先存放在檔案 file 中,用 crontab file 的方式來設定時程表。

像你所需要的就是
每五分鍾
*/5 * * * * sh 全路徑/b.sh
每五秒
* * * * * sleep 20;全路徑/b.sh

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:705
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:968
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:676
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:828
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:737
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1076
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:308
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:188
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:875
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:829