# linux tips * `info coreutils` * try to open manual pages for programs or configuration files you want to learn about. example: man locale.conf * keybindings on the terminal * ctrl+l clear screen * ctrl+c quit process, sends the sigint signal * ctrl+d exit * for ensuring permissions one may create, and regularly run, a script where the desired filesystem permissions are applied with commands like chmod. unanticipated permission changes are otherwise unlikely to be noticed * [software list](/foreign/software-list.html) ## reading live updates from logfiles and other text files tail -f displays lines from the end of files and continues to display live future updates - so you can wait and see updates in real-time ~~~ tail -f /var/log/mylogfile ~~~ -n specifies the number of last lines to show at first ~~~ tail -n 400 -f /var/log/mylogfile ~~~ it can be filtered ~~~ tail -f |grep myfilterstring ~~~ live updates of multiple files: ~~~ tail -f /var/log/mylogfile /var/log/another-file /var/log/and-another-file ~~~ ## regular task execution, task scheduling with cron ### cron configuration format see [here](http://en.wikipedia.org/wiki/Cron#Format) ### example line 0 */12 * * * /usr/bin/redmine-update-repositories * "*" means "every". so that "* 3" would mean "every minute at hour 3" * "*/2" means "each 2" ### installation of dcron ~~~ su root # dcron is one of the simpler implementations pacman -S dcron systemctl enable crond # remove the included preset jobs and directories - /etc/cron.daily and the like crontab -d && rmdir /etc/cron* mkdir /etc/cron.d # create rules in cron job files nano /etc/cron.d/myscript systemctl start crond ~~~ crond sends the standard output from jobs per mail. you may not want this, so edit "/etc/conf.d/crond" and add "-m off" to the arguments. "systemctl status crond" shows log and error information