代码在终端中有效,但在脚本中无效

做我的朋友

我有:This is my zip file.zip在路上$dec

如果我手动将此代码复制到终端窗口,则会得到正确的输出。

但是,如果我使用相同的确切代码并将其放入.sh文件并使用执行set -x,我将得到:

++ ls ''
ls: cannot access : No such file or directory

这是我正在使用的代码...

#!/bin/bash
set -x
for k in $(ls "$dec"); do
echo $k
if [[ "$k" == "" ]];
then
echo -e "Nothing Here\n"
elif [[ "$k" =~ \.(doc|txt)$ ]];
then
   echo "Document"  
elif [[ "$k" =~ ".zip" ]];
then
    echo -e "ZIP"

    fi
done

有人看到为什么在手动复制时为什么会运行,但在执行时却看不到吗?

$dec已经定义。我只是将其排除在部分脚本之外。

~/Scripts/mypath$ echo $dec
/home/adam/Scripts/mypath/archived
Roadmr

如果$dec没有价值,那么您正在做ls ""尝试一下,您将看到相同的错误消息。注意ls ""ls(不带参数)不同。检查您的脚本以查看$dec未定义原因。

如您所说,如果$dec在运行脚本之前已定义则可能需要导出它,以便运行的脚本知道该脚本。

export dec
./script.sh

请阅读以下内容以获取更多信息exporthttps : //stackoverflow.com/questions/7411455/what-does-export-do-in-shell-programming

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

此命令在终端中有效,但在Shell脚本中无效

来自分类Dev

命令在终端中有效,但在bash脚本中无效

来自分类Dev

导出变量在终端中有效,但在 shell 脚本中无效

来自分类Dev

Segmentation Fault(Core Dump)-代码在VS中有效,但在Linux终端中无效

来自分类Dev

为什么此命令“google-auth”在终端中有效,但在 bash 脚本中无效?

来自分类Dev

NVM命令在终端中有效,但在屏幕中无效

来自分类Dev

matplotlib pyplot.plt.style在终端中有效,但在SublimeText,PyCharm或BBEdit中无效

来自分类Dev

为什么powershell命令在终端中有效但在lnk文件中无效?

来自分类Dev

Flutter CLI 在 mac 终端中有效,但在 VSCode 或 Android Studio 中无效

来自分类Dev

代码在Firefox Scratchpad中有效,但在代码中无效

来自分类Dev

代码在Visual Studio 2010中有效,但在Visual Studio 2015中无效

来自分类Dev

使用变量的查询在PHPMyAdmin中有效,但在PHP脚本中无效

来自分类Dev

使用变量的查询在PHPMyAdmin中有效,但在PHP脚本中无效

来自分类Dev

zip在外壳中有效,但在Python脚本中无效

来自分类Dev

脚本在 CodeCademy 中有效,但在命令行中无效

来自分类Dev

jQuery 脚本在 HTML 中有效,但在外部文件中无效

来自分类Dev

命令在crontab中失败,但在终端中有效

来自分类Dev

函数在调试器中有效,但在实时代码中无效

来自分类Dev

存储过程在DB中有效,但在C#代码中无效

来自分类Dev

代码在jsfiddle中有效,但在html文件中无效

来自分类Dev

Firebase安全规则在模拟器中有效,但在代码中无效

来自分类Dev

在特定工作簿中有效的代码,但在个人工作簿中无效

来自分类Dev

代码在jsfiddle中有效,但在html页面中无效

来自分类Dev

在csv中搜索值,代码在ipython中有效,但在程序中使用时无效

来自分类Dev

代码在spyder(python 3,7)中有效,但在Jupyter Notebook中无效

来自分类Dev

Firebase安全规则在模拟器中有效,但在代码中无效

来自分类Dev

函数在调试器中有效,但在实时代码中无效

来自分类Dev

NSView 显示代码在 Yosemite 中有效但在 macOS Sierra 中无效

来自分类Dev

Websocket 代码在控制台中有效,但在 winform 中无效

Related 相关文章

  1. 1

    此命令在终端中有效,但在Shell脚本中无效

  2. 2

    命令在终端中有效,但在bash脚本中无效

  3. 3

    导出变量在终端中有效,但在 shell 脚本中无效

  4. 4

    Segmentation Fault(Core Dump)-代码在VS中有效,但在Linux终端中无效

  5. 5

    为什么此命令“google-auth”在终端中有效,但在 bash 脚本中无效?

  6. 6

    NVM命令在终端中有效,但在屏幕中无效

  7. 7

    matplotlib pyplot.plt.style在终端中有效,但在SublimeText,PyCharm或BBEdit中无效

  8. 8

    为什么powershell命令在终端中有效但在lnk文件中无效?

  9. 9

    Flutter CLI 在 mac 终端中有效,但在 VSCode 或 Android Studio 中无效

  10. 10

    代码在Firefox Scratchpad中有效,但在代码中无效

  11. 11

    代码在Visual Studio 2010中有效,但在Visual Studio 2015中无效

  12. 12

    使用变量的查询在PHPMyAdmin中有效,但在PHP脚本中无效

  13. 13

    使用变量的查询在PHPMyAdmin中有效,但在PHP脚本中无效

  14. 14

    zip在外壳中有效,但在Python脚本中无效

  15. 15

    脚本在 CodeCademy 中有效,但在命令行中无效

  16. 16

    jQuery 脚本在 HTML 中有效,但在外部文件中无效

  17. 17

    命令在crontab中失败,但在终端中有效

  18. 18

    函数在调试器中有效,但在实时代码中无效

  19. 19

    存储过程在DB中有效,但在C#代码中无效

  20. 20

    代码在jsfiddle中有效,但在html文件中无效

  21. 21

    Firebase安全规则在模拟器中有效,但在代码中无效

  22. 22

    在特定工作簿中有效的代码,但在个人工作簿中无效

  23. 23

    代码在jsfiddle中有效,但在html页面中无效

  24. 24

    在csv中搜索值,代码在ipython中有效,但在程序中使用时无效

  25. 25

    代码在spyder(python 3,7)中有效,但在Jupyter Notebook中无效

  26. 26

    Firebase安全规则在模拟器中有效,但在代码中无效

  27. 27

    函数在调试器中有效,但在实时代码中无效

  28. 28

    NSView 显示代码在 Yosemite 中有效但在 macOS Sierra 中无效

  29. 29

    Websocket 代码在控制台中有效,但在 winform 中无效

热门标签

归档