小编use*_*076的帖子

ifeq问题:比较包含点的2个字符串

我试图实现一个简单的字符串比较来获取文件的类型(使用其扩展名),如下所示:

extract_pkg: $(PKG)
    $(eval EXT := $(suffix $(PKG)))
    @echo $(EXT)
ifeq ($(EXT), .zip)
    @echo "is zip file"
else
    @echo "is not a zip file"
endif

extract_pkg : PKG = mypkg.zip
Run Code Online (Sandbox Code Playgroud)

但是,当我运行它时,它会进入else分支.我的猜测是,它与点有关,但我没有找到解决方案.谢谢你的帮助 !

编辑1:基本代码实际上有点像以下,它按预期工作:

test_cmp:
ifeq (.zip,.zip)
        @echo ".zip==.zip"
endif
ifeq (zip,zip)
        @echo "zip==zip"
endif
Run Code Online (Sandbox Code Playgroud)

因此问题出在其他地方!

gnu-make

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

如何在 R hmisc 中使用 Latex 指定列的对齐方式

我正在使用这个:

latex(data, cgroup=c("sample1", "sample2"), n.cgroup=c(2,2), file="")
Run Code Online (Sandbox Code Playgroud)

生成一个 tex 表。

输出如下所示:

\begin{table}[!tbp]
\begin{center}
\begin{tabular}{lrlrl}
\hline\hline
\multicolumn{1}{l}{sample1}&\multicolumn{1}{c}{sample2}&\multicolumn{1}{c}{abs reads}&\multicolumn{1}{c}{rel reads}&\multicolumn{1}{c}{abs reads.1}&\multicolumn{1}{l}{rel reads.1}\tabularnewline
\hline
...
%the content%
...
\hline
\end{tabular}
\end{center}
\end{table}
Run Code Online (Sandbox Code Playgroud)

问题:如何改变这个:

\begin{tabular}{lrlrl}
Run Code Online (Sandbox Code Playgroud)

像这样的事情:

\begin{tabular}{lrrrr}
Run Code Online (Sandbox Code Playgroud)

使用乳胶功能?

latex r

3
推荐指数
1
解决办法
953
查看次数

在Case语句中使用带有多个选项的变量

是否有可能做类似以下的事情(以及如何?)(,或者为什么不呢?):

MATCH="--opt1 | --opt2"
while true ; do
    case $1 in
        $MATCH)
             echo "option $2" found;
             shift 2;;
        *)
             unknown option; exit 1;
    esac
done
Run Code Online (Sandbox Code Playgroud)

因为我不明白这不起作用.但是,只有像MATCH =" - opt1"这样的替代方案就可以了.

编辑1:可能的解决方案

可以简单地检查给定选项是否出现在多个允许选项的字符串中,而不是使用case语句,例如通过使用grep和if.要动态地完成它,可以考虑以下解决方案,它也可能与case语句结合或嵌入:

while true ; do
if [ -n "$(echo $MATCHES|grep -- $1)" ]; then
    echo "found option $1 with value $2"
    shift 2
fi
done
Run Code Online (Sandbox Code Playgroud)

variables bash switch-statement

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

标签 统计

bash ×1

gnu-make ×1

latex ×1

r ×1

switch-statement ×1

variables ×1