我正在尝试为 Ubuntu 13.04 制作一个安装后脚本,以便在运行时自动安装我想要的程序并应用我想要的设置,例如创建别名,以便 apt-get=apt-fast、wget=aria2c 和 sudo= “须藤”。在脚本的开头,我将其设置为检查别名列表并展开它以在脚本中使用(如果存在),以便在整个脚本中使用别名而不是原始命令。
我希望脚本做的是测试 ~/bash_aliases 是否存在,如果存在,则查找 string1、string2、string3。如果文件存在并且找到所有字符串,则回显已存在的别名,否则添加缺少的字符串或创建包含所有别名的文件不存在。在搜索了一段时间后,我有了一个基本的布局,但我的问题是它的搜索为 OR not AND。一旦找到任何字符串,它就会说好的,它们在那里并且不会添加丢失的字符串。
这是我到目前为止所拥有的:
if [ -f ~/.bash_aliases ]; then
if grep -q "# Additional Alias Definitions" "alias apt-get='apt-fast'" "alias wget='aria2c'" "alias sudo='sudo '" ~/.bash_aliases; then
echo 'Aliases already in place.'
else
printf "%s\n" "# Additional Alias Definitions" "alias apt-get='apt-fast'" "alias wget='aria2c'" "alias sudo='sudo '" >> ~/.bash_aliases
fi
else
printf "%s\n" "# Additional Alias Definitions" "alias apt-get='apt-fast'" "alias wget='aria2c'" "alias sudo='sudo '" >> ~/.bash_aliases
fi
我如何让它按我的意愿工作?
编辑:我设法让它工作,并没有完全按照我想要的方式完成,但仍然可以工作...... http://paste.progval.net/show/582/