我对 Linux 还不是很熟悉,现在正在设置系统。我想编写一个 shell 脚本,它将执行两件事:
- 开始
i2prouter
- 因为我不想它一直作为守护进程运行,因为它会占用大量流量。 - 将运行新的 iptables 程序,为互联网设置新规则。
我创建了一个新的 iptables 规则文件(名为iptables.up.rules
)
当我从终端执行此操作时,我写下以下内容
i2prouter start
sudo iptables-restore < /etc/iptables.up.rules
但是,如果我只是将其放入.sh
文件中并使其可执行,它似乎不起作用。
答案1
Shell 脚本必须以以下行开头:
#!/bin/sh
或者/bin/bash
,或者任何你想使用的 shell。因此你的脚本文件应该如下所示:
#!/bin/sh
i2prouter start
sudo iptables-restore < /etc/iptables.up.rules
答案2
不要忘记包含 shebang ( #!/bin/sh
) 并授予执行权限 ( chmod u+x script.sh
)