apt-cache search "google chrome" | awk '{print $1}' | perl -pe '$_ = "\033[1;29m$_\033[0m" if($. % 2)'那么,有没有办法用它做一个bash别名呢?它可以工作,但我不知道如何传递参数来替换这种情况下的"google chrome“。或者有没有更简单的方法呢?
还有:有没有办法为每一行显示一个架构(apt-cache show)?我之前使用的是gentoo,我想我总是选择艰难的方式……
发布于 2014-06-05 08:02:13
使用"$@"将其作为函数写入您的参数:
search() {
apt-cache search "$@" | awk '{print $1}' | perl -pe '$_ = "\033[1;29m$_\033[0m" if($. % 2)'
}在您的.bashrc中,您可以使用search google chrome。
发布于 2014-06-05 08:18:09
#!/bin/bash
apt-cache search $@ | awk '{print $1}' |
while read line; do apt-cache madison $line; done |
sed 's/^ *//' |
perl -pe '$_ = "\e[34m$_\e[39m" if($.%2==1)' ;
echo -e "\e[49m"这就是我所做的。它实际上是有效的:x
发布于 2014-06-05 08:35:47
这里有另一种方法:
apt-cache search "$1" |
awk '{ print (NR%2) ? "\033[1;29m-> " $1 "\033[0m" : "-> " $1 ;
system ("apt-cache show " $1 "| egrep \"^Package|^Version|^Architecture\"")
}'我还尝试在上面的代码中适应您的第二个请求(每行使用apt-cache show)。如果需要,可以对其进行修改。
https://stackoverflow.com/questions/24048931
复制相似问题