我需要制作这个bash脚本:
#!bin/bash
echo "Checking if root…."
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo "Not running as root"
exit
fi
echo -ne "Downloading NEW hosts blocking file: "
wget -qO /tmp/hosts.txt http://deathsrepo.webege.com/hosts.txt
echo "DONE!"
mv /tmp/hosts.text -b etc/
wget -qO /tmp/hosts.bak http://deathsrepo.webege.com/hosts.bak
mv /tmp/hosts.bak -b etc/
rename .txt . *.text才能将hosts.text重命名为主机。另外,当这个包被删除时,我需要命名为主机的hosts.bak。
发布于 2013-02-15 11:10:48
要重命名文件,只需移动它:
mv hosts.text /etc/hosts如果您的目标是一个目录,您的文件将移动到其中,名称保持不变:
mv hosts.text /etc/ # file is moved to /etc/hosts.text如果目标是文件,并且目标文件存在,则将源移到指定的目标文件,并覆盖该目标文件中的文件:
mv hosts.text /etc/hosts # file is moved and renamed to /etc/hosts如果目标不存在,并且缺少尾部斜杠,则您的文件将被重命名为目标:
mv hosts.text foobar.txt # file is renamed to foobar.txt发布于 2013-02-15 12:44:42
1-删除原始主机:
rm /etc/hosts2-重命名hosts.text:
mv /tmp/hosts.text /tmp/hosts3- Move hosts.text to /etc:
mv /tmp/hosts.text /etc可以使用mv同时移动和重命名。我还建议进行备份,而不是删除原始主机:
mv /etc/hosts /etc/hosts.bak # Make a backup
mv /tmp/hosts.text /etc/hosts # Move and rename我真的不知道你想做什么,但我认为你的完整脚本会变成这样的:
#!bin/bash
echo "Checking if root…."
if [[ $(/usr/bin/id -u) -ne 0 ]]; then
echo "Not running as root"
exit
fi
echo -ne "Downloading NEW hosts blocking file: "
wget -qO /tmp/hosts.txt http://deathsrepo.webege.com/hosts.txt
echo "DONE!"
mv /tmp/hosts.txt /etc/hosts # replace original hosts with downloaded hosts.txt
wget -qO /tmp/hosts.bak http://deathsrepo.webege.com/hosts.bak
mv /tmp/hosts.bak /etc # move downloaded hosts.bak to /etchttps://stackoverflow.com/questions/14887709
复制相似问题