8 시간 후에 명령을 실행하는 간단한 방법은 무엇입니까? 나는 이런 식으로 생각할 수 있습니다.
nohup bash -c "sleep 28800 ; ./mycommand.sh" &
더 “적절한”방법이 있습니까?
답변
at
명령을 사용할 수 있습니다 . 은 at
나중에 명령을 실행합니다. at
유틸리티에서-작업, 나중에 실행하기로 표준 입력과 함께 그룹을에서 명령을 읽어하여야한다.
일반적으로 at
Ubuntu에 기본적으로 설치되지만 릴리스에 포함되어 있지 않은 경우 다음을 통해 설치하십시오.
sudo apt-get install at
자세한 내용, 옵션, 예제 및 기타 정보는 Ubuntu 맨 페이지 리포지토리를 참조하십시오.
예:
at now +8 hours -f ~/myscript.sh
tomorrow
또는 과 같이 편리한 속기를 사용할 수도 있습니다 noon
.
echo "tweet fore" | at teatime
경고 : 파이프 왼쪽에서 명령을 즉시 실행 하지만 나중에 출력 만 표시합니다. 이 예제에서는 작업을에 파이프하는 방법도 보여줍니다at
. at -c
예약 된 작업을 검사 할 수있는 방법으로 다음과 같이 번호와 함께 편리하게 나열 할 수 있습니다.
at -c 3
답변
예, 크론 작업을 설정할 수 있습니다.
예를 들어, 현재 시간이 14:39:00이고 오늘이 8 월 30 일 금요일 인 경우 crontab -e
명령을 사용하여 crontab 파일에 다음 cron 작업 (8 시간 후에 실행)을 추가 할 수 있습니다 .
39 22 30 8 5 /path/to/mycommand.sh
추가 정보 :
답변
의 그놈 기반의 GUI를 사용 cron
, at
등을 :
CronHowto 의 소개는 gnome-schedule
모든 쓰레기를 터미널에 입력하는 것보다 훨씬 좋은 gui 사용을 제안합니다 ( “power”* nix / bsd 사용자가 아닌 “평균”우분투 사용자의 경우).
Unity Dash (또는 다른 애플리케이션 메뉴)를 사용하여 예약 된 작업 을 찾 거나 실행하여이를 실행하십시오 gnome-schedule
.
Gnome 기반 Ubuntu 시스템에서 응용 프로그램-> 시스템 도구의 Gnome Scheduled tasks 도구 (gnome-schedule 패키지)는 Cron을 사용하도록 프롬프트하는 그래픽 인터페이스를 제공합니다. 프로젝트 웹 사이트는 http://gnome-schedule.sourceforge.net/에 있습니다 . 소프트웨어는 소프트웨어 센터에서 설치하거나 다음을 입력하여 설치할 수 있습니다
sudo apt-get install gnome-schedule
터미널에서.
사용하여 gnome-schedule
홈 디렉토리에 스크립트, “에서”새 명령 윈도우의이 유형을 사용하여 설정 될 것이다 :
답변
나는 이것을 발견하기 전에 빠르고 더러운 방법을 알아 냈습니다 at
.
정오에 스크립트를 실행한다고 가정 해보십시오.
until [[ "$(date)" =~ "12:00:" ]]; do
sleep 10
done
./mycommand.sh
내일 정오에 실행하기를 원한다고 가정하십시오 (오늘은 11 월 24 일입니다).
until [[ "$(date)" =~ "25 12:00:" ]]; do
sleep 30
done
./mycommand.sh
업데이트 : 약간 더 나은 방법 : 다음을 사용하여 관심있는 숫자 만 테스트하십시오 date +FORMAT
.
until [[ $(date +%H:%M) == 21:06 ]]; do
...