我有这个正则表达式,它允许一个空格后跟可见字符
[[:space:]][[:graph:]]+$
ptrn
我如何构建具有某种模式或相同模式ptrn
后跟上面附加模式的可能性?
我有这个正则表达式,它允许一个空格后跟可见字符
[[:space:]][[:graph:]]+$
ptrn
我如何构建具有某种模式或相同模式ptrn
后跟上面附加模式的可能性?
我正在使用以下模式匹配来使用tput
.
| sed -r $"s/^==> .* <==$/$(tput setaf 46)&$(tput sgr0)/"
我想知道我是否可以用“grep”做类似的事情
| $_GREP -e ^ -e '^==>.*'
和
_GREP="/bin/grep --color"
我不太确定如何在 grep 匹配中加入首选颜色。
我正在对存储在fdir
数组中的多个目录使用 find 命令来对每个文件执行 head 。如何调整代码以在 中使用文件fdir
?
nf=${#fdir[@]}
for (( i=0 ; i < $nf ; i++ )); do
find "${fdir[$i]}" -type f \
-exec head -v -n "$hn" '{}' +
done
我有一个使用分隔符分隔两个整数的 bash 字符串
var="23,54"
我想捕获分隔符(在这种情况下为逗号)并将其存储在变量中delim
。
如何处理调用需要引用的参数的函数?
例如,考虑以下函数
time-stamp ()
{
if (( $# == 0)); then
tmstamp="$(date +T%T.%N)"
else
tmstamp="$(date $1)"
fi
echo "$tmstamp"
}
这里有一些调用的可能性
var="+%T %N"
stamp=$( date "${var}" )
或者
var="+%T %N"
stamp="$( date "${var}" )"
我有一个 bash 函数,其中参数是文件。因此下面的打印语句给出
opts="$@"
echo "$fargs"
Result:
linge-cellar.rc linge-cellar.rc~ linge-checkn.rc linge-checkn.rc~ linge-comint.rc linge-comint.rc~ linge-comseq.rc linge-comseq.rc~ linge-console.rc linge-console.rc~ linge-curiplaya.rc linge-curiplaya.rc~ linge-dircolors.rc linge-dircolors.rc~ linge-firefly.rc linge-firefly.rc~ linge-mosaic.rc linge-mosaic.rc~ linge-profile.rc opcon-cellar.rc~
我有两个数组incl
,excl
它们存储要处理的文件类型。
Example: incl=( .rc )
我想列两个清单。一种文件与数组中的文件类型匹配的文件 incl
(例如,带有.rc
扩展名的文件)。另一个列表包含文件类型匹配失败的文件名(例如带有.rc~
扩展名的文件)。
从一个简单的循环开始
fargs="$@"
local f ty aggr=()
for f in $fargs; do
for ty in "${incl[@]}"; do
[[ "$f" =~ *${ty}$ ]] && aggr+=( "$f" )
done
done
echo "$fargs"
echo
echo "${incl[@]}"
echo
echo " aggr:"
echo " ${aggr[*]}"
但是出了点问题,因为我总是得到一个空aggr
数组。
dvorak linge-cellar.rc linge-cellar.rc~ linge-checkn.rc linge-checkn.rc~ linge-comint.rc linge-comint.rc~ linge-comseq.rc linge-comseq.rc~ linge-console.rc linge-console.rc~ linge-curiplaya.rc linge-curiplaya.rc~ linge-dircolors.rc linge-dircolors.rc~ linge-firefly.rc linge-firefly.rc~ linge-mosaic.rc linge-mosaic.rc~ linge-profile.rc opcon-cellar.rc~
.rc
aggr: