gpt4 book ai didi

linux - 在 Linux 中的 for 循环中使用 and(&&) 运算符

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:23:26 24 4
gpt4 key购买 nike

01) 我正在尝试在 for 循环中使用 && 运算符,如下面的脚本所示。但是,这似乎不起作用。我无法在终端窗口中看到生成的错误,因为它一遇到错误就会关闭。有人可以告诉我我做错了什么吗?

#!/bin/bash

cd ~/Documents/DTI/

#subj and subj1 contain folders which are located in the DTI directory
subj="ARN MT"
subj1="ARNpre1 ARNpre2"

for [[s in $subj] && [s1 in $subj1]]

02) 正如您在我的“subj1”中看到的那样,前两个条目以字母 ARN 开头,这意味着它们是 ARN 的子目录(位于不同的位置。不在 ARN 主目录中)。所以我还想运行一个命令,如果 subj1 包含 subj 那么它必须执行某个命令。为此我写了以下内容,

if [[ ${s1} == *"${s}"* ]];then

这是执行此类操作的正确方法吗?

如果有任何帮助,我将不胜感激。

提前谢谢你。

最佳答案

我认为 for [[s in $subj] && [s1 in $subj1]] 你的意思是:

for s in $subj; do
for s1 in $subj1; do
# do something
done
done

通过嵌套 for 循环,您将遍历 ss1 的所有可能组合,这听起来像您正在尝试的做你问题的第 1 部分。

但是,我无法理解您在第 2 部分中谈论的内容,因此我无法在这方面为您提供帮助。

关于linux - 在 Linux 中的 for 循环中使用 and(&&) 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17411470/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com