linux命令解决方案

1. sh文件无法执行

报错提示有^M或\r之类的,尝试运行下面代码

sed 's/\r//' -i 你的sh文件名.sh

2. 查看文件权限

lsattr 文件

3. crontab -e编辑保存显示没有权限

可能是crontab有特殊权限,通过lsattr命令查看权限

lsattr /var/spool/cron/

看到会有ai权限
依次执行一下命令,去掉权限

chattr -ai /etc/bin/cron.d
chattr -ai /var/spool/cron
chattr -ai /var/spool/cron/root

如果提示chattr也没有权限,应该是中病毒了,被修改了权限
执行下面命令,回复chattr,再次执行上面命令

cd /usr/bin
 
cp chattr chattr.new
chmod u+x chattr.new
chattr.new -i chattr
rm -rf chattr.new
chmod u+x chattr

4. crontab每秒执行

编辑一下sh

#!/bin/bash
step=秒数,必须是60能整除的
for((i=0;i<60;i=(i+step))); do
  要执行的命令
  sleep $step
done
exit 0

然后在crontab中就可以这样写

* * * * * sh 你的sh文件

5. nohup按天生成日志

sh可以这样写

sh 你的sh文件 >> 你的日志文件`date +%Y%m%d`.log

猜你喜欢

转载自blog.csdn.net/jl15988/article/details/128669091
今日推荐