:找不到文件或目录

:找不到文件或目录

我正在开发一个 BASHScript 来启动 wlan 监控模式而不与 NetworkManager 交互,但我在使用此功能时遇到了问题:

serial_setup(){

local file_name=$1
while IFS =, read PhysicalDevice ItfAlias ItfMode;
do
iw $PhysicalDevice interface add $ItfAlias type $ItfMode
ifconfig $ItfAlias up
done < file_name

}

上面的函数读取格式为的文本文件:

PhysicalDevice1,alias1,mode1
PhysicalDevice2,alias2,mode2
PhysicalDevice3,alias3,mode3

我需要找出错误原因和最佳解决方案?

编辑:这是完整的代码:MM脚本 由于在此处粘贴和格式化代码时遇到问题,我必须使用 Paste`bin

答案1

在我看来,好像你忘记了$变量上的 a 。您还忘记了对其他几个变量加双引号:

serial_setup () {
    local file_name="$1"

    while IFS=, read PhysicalDevice ItfAlias ItfMode; do
        iw "$PhysicalDevice" interface add "$ItfAlias" type "$ItfMode"
        ifconfig "$ItfAlias" up
    done <"$file_name"
}

看 ”忘记在 bash/POSIX shell 中引用变量的安全隐患”。

相关内容