在ubuntu16下如何编写一个shell脚本,该脚本能够自动重复执行100次,每次重启时运行`ip a`命令,并将命令结果追加到指定文件中?
时间: 2024-10-22 22:20:07 浏览: 23
要创建一个在Ubuntu 16.04上自动重复执行的shell脚本,每次系统重启时都会运行`ip a`命令并将结果追加到指定文件中,你可以按照以下步骤操作:
1. 打开文本编辑器(如nano、vim或gedit),创建一个新的shell脚本文件。例如,使用nano编辑器:
```bash
nano /path/to/your/script.sh
```
2. 输入以下内容,替换`/path/to/outputfile.txt`为你想要保存结果的文件路径:
```bash
#!/bin/bash
# 设置循环次数
count=100
while [ $count -gt 0 ]
do
# 获取IP地址信息并追加到文件
ip_address=$(ip a)
echo "$ip_address" >> /path/to/outputfile.txt
# 每次循环后减去1,直到达到100次
count=$((count - 1))
done
# 让脚本在系统启动时运行
sudo systemctl enable your_script_name.service
```
3. 保存并关闭文件。在nano中按`Ctrl+X`,然后按`Y`确认保存,再按`Enter`。
4. 给脚本添加执行权限:
```bash
chmod +x /path/to/your/script.sh
```
5. 创建一个systemd服务以便于开机自启动。为此,在终端中输入:
```bash
sudo nano /etc/systemd/system/your_script_name.service
```
6. 添加以下内容,替换`your_script_name.sh`为你的脚本文件名:
```ini
[Unit]
Description=Your Script to Run on Startup
[Service]
ExecStart=/path/to/your/script.sh
Restart=always
[Install]
WantedBy=multi-user.target
```
7. 保存并关闭文件,然后启用新服务并使其开机自启动:
```bash
sudo systemctl daemon-reload
sudo systemctl start your_script_name.service
sudo systemctl enable your_script_name.service
```
现在,每当系统重启时,这个shell脚本就会自动执行100次`ip a`命令并将结果追加到指定文件中。
阅读全文