Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 将文件名传递给变量时出现“未找到命令”错误_Linux_Bash_Shell_Variables_Parameter Passing - Fatal编程技术网

Linux 将文件名传递给变量时出现“未找到命令”错误

Linux 将文件名传递给变量时出现“未找到命令”错误,linux,bash,shell,variables,parameter-passing,Linux,Bash,Shell,Variables,Parameter Passing,执行代码时会看到以下错误消息: file\u extractor.sh:第3行:未找到文件名:命令 文件\u extractor.sh:第4行:未找到ext:命令 我已尝试向变量添加引号,file\u name=“$1”无效, 然后用双引号替换$(file-b--mime类型$file_name | sed's/application\///g') 什么都没用 该脚本中有两个问题: 对变量的赋值不允许在= #!/bin/bash file_name = $1 ext = (file -b -

执行代码时会看到以下错误消息:

file\u extractor.sh:第3行:未找到文件名:命令

文件\u extractor.sh:第4行:未找到ext:命令

我已尝试向变量添加引号,
file\u name=“$1”
无效, 然后用双引号替换
$(file-b--mime类型$file_name | sed's/application\///g')


什么都没用

该脚本中有两个问题:

  • 对变量的赋值不允许在
    =

    #!/bin/bash
    
    file_name = $1
    ext = (file -b --mime-type $file_name | sed 's/application\///g')
    echo $file_name $ext
    
  • 您几乎总是在寻找命令替换:

    var="val"  # OK
    var = "val"  # Not OK
    
    即使这不是你错误的根源。前者是


请看一看:可能是的重复。您是否看过正在运行的shell脚本?请不要试图通过猜测你认为正确的语法来学习一门语言。谢谢兄弟!!
var=$(something that produces output)