我在一个文件夹中有一个文件需要删除才能解决软件冲突。 我知道文件的文件夹路径存储在* .ini文件中,我想要grep该行的特定部分,让脚本cd进去,并删除有问题的文件。
到目前为止我已经完成了:
#!/bin/bash
#
PROFFILE=$HOME/.mozilla/firefox/profiles.ini
DIRTEST=$HOME/.mozilla/firefox/
if [ -f $PROFFILE ]
then
echo "yes"
# PROFPATH="$(cat $PROFFILE grep ^[[\s\S]*?(.default)$)"
echo $PROFPATH
else
echo "no"
fi
#script ends here
#
#
我确定我通过混合使用grep和regex做错了而不确定如何继续。
这是ini文件的一个例子
Name=default
IsRelative=1
Path=l00jsdm9.default
Default=1
答案 0 :(得分:0)
使用此:
PROFPATH=$( awk -F= '$1=="Path" {print $2}' $PROFFILE )
或者如果文件中有许多Path变量,并且需要一个与表达式匹配的变量:
PROFPATH=$( awk -F= '$1=="Path" && 2 ~ /default/ {print $2}' $PROFFILE )