gpt4 book ai didi

linux - 使用 TaskSet 运行的 Shell 脚本

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:40:46 25 4
gpt4 key购买 nike

我在 ubuntu 上运行以下命令:

taskset -c 1 ./forLoop

它给了我以下错误:

./forLoop: 1: Syntax error: Bad for loop variable

forLoop 中的内容如下:

for ((  i = 0 ;  i <= 1000000;  i++  ))
do
echo "Welcome $i times"
done

只是 ./forLoop 确实会自行执行,但我想将该过程附加到某个亲和性。我可以吗?

最佳答案

这很可能会发生,因为您使用的是 Ubuntu,调用的是名为 dash 的解释器,而不是 bash

简单地说,键入此内容以确认:

dash ./forLoop    

您应该会看到相同的“for 循环”错误。

解决这个问题的一些方法:

  • 强制使用 `bash`:`taskset -c 1 bash ./foo.sh`
  • 将 `#!/bin/bash` 作为脚本的第一行。
  • 将循环代码更改为与破折号兼容,如以下链接所述。

在这里阅读更多:https://wiki.ubuntu.com/DashAsBinSh/

关于linux - 使用 TaskSet 运行的 Shell 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11490269/

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