Sun Solaris 10의 crontab에서 항목의 주석 처리를 제거해야 하는 sed 명령을 작성 중입니다.
두 가지 방법을 모두 시도했는데 Ubuntu에서는 작동하지만 Sun Solaris 10에서는 작동하지 않습니다.sed: illegal option -- E
crontab: can't open your crontab file.
crontab -l | sed -E '/#* *([^ ]+ *){5}[^ ]*run_all.sh/s/^#* *//' | crontab -
반품:
crontab -l | sed '/#* *\([^ ][^ ]* *\)\{5\}[^ ]*run_all.sh\.sh/s/^#* *//' | crontab -
crontab의 쉘은 다음과 같습니다:
###15 00 * * * /bill/u01/WORK/ALARMS/run_all.sh > /bill/u01/WORK/ALARMS/`date +\%Y\%m\%d\%H\%M\%S`_RUN_ALL_PROCEDURE.log
답변1
정규식을 너무 복잡하게 만들면 안 됩니다. 문자열이 포함된 줄의 시작 부분에서 가능한 해시태그를 제거하려면 run_all.sh
다음을 수행할 수 있습니다.
crontab -l | sed 's/^#*\(.*run_all\.sh\)/\1/' | crontab -
불행하게도 이것을 테스트할 수 있는 Solaris 시스템이 없습니다.