Ubuntu Bash 不理解的 Bash 脚本

标签 bash ubuntu

我是 Bash 脚本的新手。我像这样在 Ubuntu 中运行以下简单脚本:

sudo bash -x Script.sh

输出:

+ $'\r'
: command not found
+ $'\r'
: command not found
+ $'\r'
: command not found
+ adminEmail=$'info@domain.com\r'
+ $'\r'
: command not found
' echo 'database name:
database name:
+ read $'dbname\r'

实际脚本:

#!/bin/bash

# Installation script for latest Wordpress website on Ubuntu
# 
# Kave
# December 27, 2011


adminEmail="info@domain.com"

echo "database name:"
read dbname

所有这些 '\r' 错误消息是什么?连评论都好像没看懂...

最佳答案

简单地做

dos2unix scriptname

并执行你的脚本。

如果您没有该工具,您可以执行以下操作来安装它。

sudo apt-get install dos2unix

执行以下命令行操作来转换文件。

tr -d '\015' < scriptname > scriptname.new

sed -i 's/\x0D$//' scriptname

关于Ubuntu Bash 不理解的 Bash 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8648094/

相关文章:

python-3.x - 将网络服务器作为守护进程运行时无法识别 Airflow dag

linux - 重复 echo ,而答案是否定的

bash - 循环遍历文件 bash 脚本

node.js - 使用 Node js 在 ubuntu 上运行 React 基本应用程序

ubuntu - 我桌面上的一个文件突然说它是只读的,不允许我用 Sublime Text (Ubuntu) 更改对它的写入

ubuntu - Windows 主机的 Ansible-expect 模块

regex - 使用 bash 更正文件编号

linux - 管道只读取一行输入的程序的最佳方法

macos - Bash:如何将参数与 if 语句进行比较?

c++ - 编译 Ogre 代码时出错