相关疑难解决方法(0)

shell脚本是否对编码和行结尾敏感?

我正在Mac上制作NW.js应用程序,并希望通过双击图标以开发模式运行应用程序.第一步,我正在尝试使我的shell脚本工作.

在Windows上使用VSCode(我想获得时间),我run-nw在项目的根目录创建了一个文件,其中包含:

#!/bin/bash

cd "src"
npm install

cd ..
./tools/nwjs-sdk-v0.17.3-osx-x64/nwjs.app/Contents/MacOS/nwjs "src" &
Run Code Online (Sandbox Code Playgroud)

但我得到这个输出:

$ sh ./run-nw

: command not found  
: No such file or directory  
: command not found  
: No such file or directory  

Usage: npm <command>

where <command> is one of:  (snip commands list)

(snip npm help)

npm@3.10.3 /usr/local/lib/node_modules/npm  
: command not found  
: No such file or directory  
: command not found
Run Code Online (Sandbox Code Playgroud)

我真的不明白:

  • 似乎它需要空行作为命令.在我的编辑器(VSCode)我试图替换\r\n\n(以防\r造成了问题),但它改变不了什么.
  • 它似乎找不到文件夹(有或没有dirname指令),或者它可能不知道cd …

bash shell sh

37
推荐指数
4
解决办法
1万
查看次数

尝试运行 Docker 导致退出代码 127

我正在尝试在使用 docker 的 Windows 中运行某个应用程序。由于应用程序是一个 shell 脚本,我使用 cygwin 终端。作为 docker 的新手,我对它的工作原理没有明确的想法。

使用 boot2docker,我在 Windows 7 中打开了一个 docker 终端和一个 cygwin 终端来运行脚本。

但是当我运行脚本时,说

   ./xyz init
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

    trying to run docker resulted in exit code 127
Run Code Online (Sandbox Code Playgroud)

你能告诉我我应该通过哪些基本的急救来解决这个问题吗?

该应用程序来自vision.ai,名为vmx。有关该应用程序的信息在这里。

https://docs.vision.ai/

非常感谢您的帮助。

cygwin docker boot2docker

12
推荐指数
1
解决办法
5万
查看次数

Docker 组合容器失败并退出,代码 127 丢失 /bin/env bash

我是 Docker 的新手,所以请容忍我的任何错误术语。

我在 Windows 7 上安装了 Docker 工具,我正在尝试运行存储在 git 存储库中的专有现有项目的 Docker 组合文件,该文件可能仅在 Linux 上运行。

这些是我运行的命令:

  1. docker-machine start
  2. docker-machine env
  3. @FOR /f "tokens=*" %i IN ('docker-machine env') DO @%i
    • 这是步骤(2)的输出
  4. docker-compose -f <docker-file.yml> up

大多数 Docker 工作进展顺利(图像下载、提取等)。

它在容器启动时失败,其中一些容器运行良好 - 我识别出一个工作 MongoDB 实例,因为它的日志没有报告任何错误 - 但其他容器很快退出并显示错误代码,即:

frontend_1 exited with code 127
Run Code Online (Sandbox Code Playgroud)

向上滚动控制台,我可以看到如下几行:

No such file or directoryr/bin/env: bash
Run Code Online (Sandbox Code Playgroud)

我不知道从这里去哪里。我尝试从 CygWin 终端启动 Composer,但得到了相同的结果。


Docker 撰写文件

version: "2"

services:
  frontend:
    command: "yarn start"
    image: company/application/frontend:1
    build:
      context: frontend
      dockerfile: docker/Dockerfile
    environment:
      <env entries>
    ports: …
Run Code Online (Sandbox Code Playgroud)

windows docker docker-compose

5
推荐指数
1
解决办法
2万
查看次数

/usr/bin/env: 'bash\r': 没有那个文件或目录

在 win10 的 Linux 终端中设置 docker 后我遇到了问题。当我尝试构建时,它显示以下错误。

/usr/bin/env: ‘bash\r’: No such file or directory
ERROR: Service 'magento2' failed to build: The command '/bin/sh -c /opt/docker/bin/service.d/autosync.sh install     && docker-service-enable autosync' returned a non-zero code: 127
Run Code Online (Sandbox Code Playgroud)

它是 git line 结束错误,我该如何解决?

git newline core.autocrlf docker windows-subsystem-for-linux

5
推荐指数
2
解决办法
2万
查看次数

PowerShell Core 可以在 Linux 环境中处理带有 CRLF 行结尾的 ps1 文件吗?

我有以下未解答的问题,并且我正在寻找解释 Linux 环境中 LF 与 CRLF 行结尾的 PowerShell 核心要求的文档。

1- PWSH Core 可以处理带 CRLF 的文件吗?

2-当我运行以 LF 行结尾的 ps1 文件时,它可以调用另一个以混合 CRLF 行结尾的 ps1 文件吗?

3- PWSH 行结束要求是否已记录并在所有 Linux 发行版中保持一致?

我问上述问题是因为 PowerShell 诞生于 Windows 环境中,并且我希望它能够以某种方式容忍 LF 与 CRLF 的差异。

在线文档的链接将会有很大帮助。我进行了搜索,令人惊讶的是,我找不到任何东西。

linux powershell powershell-core

5
推荐指数
1
解决办法
979
查看次数

zsh:权限被拒绝:bin/rake

我最近买了一台新的Macbook并成功安装了Rails,Ruby,Git,Homebrew和Postgres.我可以在atom中打开我的应用程序但是当我尝试运行迁移或删除数据库时,ZSH给了我一个权限被拒绝的错误.有什么我遗失/忘记安装?

? SYT git:(master) ? bin/rake db:migrate zsh: permission denied: bin/rake ? SYT git:(master) ? bin/rake db:drop zsh: permission denied: bin/rake

postgresql zsh ruby-on-rails iterm oh-my-zsh

4
推荐指数
1
解决办法
5383
查看次数

在 WSL Ubuntu 20.04 上安装 npm 后,我收到消息“/usr/bin/env: 'bash\r': No such file or directory”

从终端运行npm installornpm命令时,我看到以下消息。执行node工作按预期进行。

    > npm install
    /usr/bin/env: ‘bash\r’: No such file or directory
Run Code Online (Sandbox Code Playgroud)

windows ubuntu node.js npm windows-subsystem-for-linux

4
推荐指数
3
解决办法
576
查看次数

如何从终端在 MacOS 上构建 android 项目?

我想从终端使用命令在 MacOS High Sierra 10.13 上的 Android Studio 3.1.3 中构建项目:

./gradlew clean build
Run Code Online (Sandbox Code Playgroud)

输出: bash:\r: 没有那个文件或目录。

或者

/gradlew clean build
Run Code Online (Sandbox Code Playgroud)

bash: 没有这样的文件或目录。

或者

gradlew clean build
Run Code Online (Sandbox Code Playgroud)

bash: 找不到 gradlew 命令。

如何从命令行执行构建?我查看了 stackoverflow 的答案,但它们没有帮助我。谢谢。

在此处输入图片说明 在此处输入图片说明

macos android gradle gradlew build.gradle

3
推荐指数
1
解决办法
1965
查看次数

docker env: bash\r: 没有这样的文件或目录

在 Windows10 上的 PyCharm 中本地部署应用程序时,我遇到了几个错误。\nMake test 命令返回以下错误:

\n
service "core" is not running container #1 \nmake: *** [Makefile:60: test] Error 1\n
Run Code Online (Sandbox Code Playgroud)\n

事实上,使用命令 make ps 返回的容器状态已退出(127)。当我检查有问题的容器的 docker 日志时,我看到:

\n
/usr/bin/env: \xe2\x80\x98bash\\r\xe2\x80\x99: No such file or directory\n
Run Code Online (Sandbox Code Playgroud)\n

在此线程中,此错误与 Windows 如何处理来自不同操作系统的文件的行结尾有关。通常的解决方案是:

\n
git config --global core.autocrlf false\n
Run Code Online (Sandbox Code Playgroud)\n

但是在运行代码并更新当前的 git 存储库并重新启动容器后,我仍然遇到同样的错误。这里可能有什么问题?

\n

windows bash pycharm docker

3
推荐指数
1
解决办法
2万
查看次数