# Linux Crontab
## Python-Crontab
- Install ```pip install python-crontab```
### Create
```python=
from crontab import CronTab
cron = CronTab(user='nafeem_haque')
job = cron.new(command='cd && echo hello_world > checktest.txt', comment="id1-xxyyzz")
job.minute.every(1)
cron.write()
print(cron)
```
### Update
```python=
from crontab import CronTab
cron = CronTab(user='nafeem_haque')
print(cron)
for job in cron:
if job.comment == 'id1-xxyyzz':
job.command = 'cd && echo hello_world12 > checktest.txt'
cron.write()
print(cron)
```
### Remove
```python=
from crontab import CronTab
cron = CronTab(user='nafeem_haque')
print(cron)
for job in cron:
if job.comment == 'id1-xxyyzz':
cron.remove(job)
cron.write()
print(cron)
```
#### Supports
- Single User
- Global
- Find By Comment
- Find By Time Format
#### Works
- By Creating Temp File
- Then Move
## Crontab
#### Supports
- Writes it to tmp file
- Checks if correct
- Then moves it to location
## Crontabs-Evatix
- Supports Global
- Issue With Single User (Update File OwnerShip)
- Writing Works
- Issue With Updating
- Supports Line Editing
- Supports Exact Match Editing
- Can be upgraded
## Options To Solve
1. Remove Entirely And Create
2. Current With Issue
- If Non Existent
- Touch
- Write
- Change Ownership
- Chmod 600
- If Exists
- Change Ownership (Issue Here)
- Write
- Change Ownership Back.
3. Write To Temp File Then Move (Need Implementation)
```
sudo crontab -u b abc.txt
```