我有一项任务,需要将/var/log/dmesg,/var/log/syslog和/var/log/message文本文件备份到不同文件夹(如桌面)中。它还会创建一个名为 Execution.txt 的文件来记录 bash 脚本运行时的日期和时间。我确实有这段代码,每次运行时我都写过,它给了我:
./bash.sh: line 7: /var/log/dmesg: Permission denied
./bash.sh: line 8: /var/log/syslog: Permission denied
./bash.sh: line 9: /var/log/message: Permission denied
Run Code Online (Sandbox Code Playgroud)
但是,它确实在桌面上创建了这些文件,但是 message 和 dmesg 文件是空的。我想知道这是正常的还是我做错了什么?下面是我到目前为止编写的代码。任何帮助,将不胜感激。谢谢!
#!/bin/bash
cat /var/log/dmesg l nl >> /home/administrator/Desktop/dmesg
cat /var/log/syslog l nl >> /home/administrator/Desktop/syslog
cat /var/log/message l nl >> /home/administrator/Desktop/message
echo ' ' > /var/log/dmesg
echo ' ' > /var/log/syslog
echo ' ' > /var/log/message
date >> /home/administrator/Desktop/execution.txt
Run Code Online (Sandbox Code Playgroud)