小编Zip*_*uda的帖子

Bash颜色一个字使用echo

我想在一个回声句中间对一个词进行着色,但似乎无法实现这一点.

这有效:

#!/bin/bash
wipe="\033[1m\033[0m"
yellow='\E[1;33'
echo -e "$yellow"
echo Hello World
echo -e "$wipe"
Run Code Online (Sandbox Code Playgroud)

但这不是:

#!/bin/bash
wipe="\033[1m\033[0m"
yellow='\E[1;33'
black="40m"
echo -e "Output a $yellow coloured $wipe word."
# or
echo -e "Output a ${yellow} coloured ${wipe} word."
Run Code Online (Sandbox Code Playgroud)

我愚蠢的做错了什么?:)

bash colors echo

10
推荐指数
2
解决办法
8867
查看次数

Bash进度条

我正在使用以下脚本浏览whois中的大型域名列表并找到注册商(对于服务器/ DNS迁移非常有用),并且工作正常.

但是,为了方便起见,我想将进度条纳入其中.这是我的脚本,如果可以改进,请告诉我:

#!/bin/bash
for f in `cat /var/www/vhosts/domainlist`
 do
   if
   domain=$f
   [ "$domain" ] ;
   then
    whois $f | grep -i domainregistrar > /dev/null
     if
     [ $? -le 0 ] ;
     then
      echo $f >> our_registrar
     else
      echo $f >> external_registrar
     fi
   fi
 done
echo "Done, check our_registrar file."
Run Code Online (Sandbox Code Playgroud)

我先试过这个:http://moblog.bradleyit.com/2010/02/simple-bash-progress-bar-function.html

然后这个,但没有运气.

您认为在该脚本中实现进度条的最简单方法是什么?

bash progress-bar

9
推荐指数
3
解决办法
2万
查看次数

bash,提示输入数字

d 是我使用的内部服务器查找工具。

我希望允许用户输入 0(或 1)到 9999 之间的任何数字(我们称之为用户输入)并让它显示结果:

d $userinput(例如1234)

然后操纵该查找的结果(下面删除了除稍后要 ping 的 IP 地址之外的所有内容):

 grep -E -o '(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)'`
Run Code Online (Sandbox Code Playgroud)

我知道我需要使用 while true; 我只是不熟悉如何正确地格式化它,更重要的是:

让它提示输入 0-9999 之间的数字

bash grep sed while-loop

2
推荐指数
1
解决办法
6312
查看次数

标签 统计

bash ×3

colors ×1

echo ×1

grep ×1

progress-bar ×1

sed ×1

while-loop ×1