ubuntu下ruby文件执行蛋疼的一个问题

    ubuntu下面用sublime打开非常简单的一段代码(其实不算代码,因为没有实际语句):

#!/usr/bin/ruby

在shell下加入x权限:chmod u+x doit.rb,然后运行 ./doit.rb,竟然出错了!返回:

./doit.rb
bash: ./doit.rb: /usr/bin/ruby^M: 坏的解释器: 没有那个文件或目录

又仔细看了一遍代码,实在没发现神马问题。于是检查/usr/bin/ruby路径是否正确,结果也是正确的,只不过用软连接link了2次,但这不影响啊!因为直接#!/usr/bin/ruby2.1跳过软连接仍然报同样错误!(各位童鞋这时能猜到是神马问题吗?

建立一个新的文件 > other.rb,敲入同样的代码,执行竟然没问题!那么答案只有一个了:源代码编码有问题!!!用16进制模式打开比较下:

doit.rb

2321 2f75 7372 2f62 696e 2f72 7562 790d 0a0d 0a

other.rb

2321 2f75 7372 2f62 696e 2f72 7562 790a 0a

这下了然了吧?一个回车是0d0a,一个是0a。回想一下doit.rb是在windows下编写的,other.rb是在linux下编写的哦!虽然只是一个小问题,但是终归破案了!go on吧!

时间: 2025-01-31 05:44:50

ubuntu下ruby文件执行蛋疼的一个问题的相关文章

max-请教一个ubuntu 下列出文件的问题

问题描述 请教一个ubuntu 下列出文件的问题 du -h --max-depth=1 /home/wwwroot/bbs/log 下面这样只能列出所有文件夹,如何列出所有文件? 解决方案 用find 命令查找. 解决方案二: 用find 命令查找. 解决方案三: ls -la -R 解决方案四: ls -l 直接 ls 也行

遍历-[新手求教]ubuntu下新建文件夹里面有什么么?

问题描述 [新手求教]ubuntu下新建文件夹里面有什么么? 我在做一个删除文件夹中所有内容的c++程序,使用遍历来删除文件夹中内容,明明是空文件夹,为什么会显示有一个"." 解决方案 每个文件夹都有一个.一个..一个指向当前文件夹,一个指向上一层.之所以不能删除,看看是不是有隐藏文件或者权限不够. 解决方案二: 你用 ls -a 就能看到当前目录下其实有一个 "." 一个 ".." ."." 是当前目录的意思.你可以 cd

c-findfirst findnext遍历文件夹下的文件,老是缺少一个怎么回事

问题描述 findfirst findnext遍历文件夹下的文件,老是缺少一个怎么回事 TSearchRec StrRecord; int iAttributes = 0; iAttributes |= faAnyFile; if(FindFirst(StrFolder + "" + StrFile, iAttributes, StrRecord) == 0) { do { m_Ap5FileNameList.push_back(StrRecord.Name); }while(Find

ubuntu下的文件夹结构,以及作用

转载自:http://changfengmingzhi.blog.163.com/blog/static/16710528820112325550304/ linux各文件夹的作用linux下的文件结构,看看每个文件夹都是干吗用的/bin 二进制可执行命令 /dev 设备特殊文件 /etc 系统管理和配置文件 /etc/rc.d 启动的配置文件和脚本 /home 用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示/lib 标准程序设计库,又叫动态链接共享库,

将Ubuntu下的文件夹共享给同意局域网中的Windows机器的教程

  本文全面详细地向你描述了在Ubuntu中如何实现局域网内的文件夹共享. 你的家中是不是有多台电脑?当你需要从一台Ubuntu电脑向另一台电脑传输数据时,是不是必须用到U盘或SD卡?你是否也觉得这个方法很烦人?我想肯定是.本文的目的就是使你在局域网内快速方便地传输文件.文档和其它较大的数据,以节省你的宝贵时间.只需一次设置,然后轻点鼠标,你就可以自由地在Ubuntu和Windows之间共享文件,当然这对其它Linux系统同样使用.不要担心,这很容易操作,不会花费太多时间. 除此之外,尽管本文是

ubuntu下7z文件的解压方法

打开终端,键入以下命令: apt-get install p7zip-full 控制台会打出以下信息: 正在读取软件包列表... 完成 正在分析软件包的依赖关系树 正在读取状态信息... 完成 建议安装的软件包: p7zip-rar 下列[新]软件包将被安装: p7zip-full 升级了 0 个软件包,新安装了 1 个软件包,要卸载 0 个软件包,有 109 个软件包未被升级. 需要下载 1,404 kB 的软件包. 解压缩后会消耗掉 3,482 kB 的额外空间. 获取:1 http://c

【转载】Linux(ubuntu)下如何安装与卸载软件总结

刚开始使用Ubuntu的用户时常有这样的问题,我要安装新软件怎么办?.exe文件在哪里,怎么软件有这么多格式?RPM包,.tar.gz是什么?怎么就是安装不了啊?等等. 的确,在Windows下安装文件只需要双击即可,所以很多人在Ubuntu下觉得很不习惯.事实上,使用Ubuntu平台下的新利得软件包管理器安装大部分软件比在Windows平台下更加简单,操作更加容易.当然,也有很多软件Ubuntu的储藏库里面没有,而这些软件有着各式各样的格式,因而安装方法也都不一样.下面我就Ubuntu下安装软

为什么在ubuntu下我创建一个文件老是报错?

问题描述 为什么在ubuntu下我创建一个文件老是报错? 3C 这是代码 File f= new File(""/home/my.xml""); System.out.println(""创建新文件""); if(!f.exists()){ try { f.createNewFile(); } catch (IOException e) { // TODO Auto-generated catch block e.printS

运维经验分享(三)-- 解决Ubuntu下crontab不能正确执行脚本的问题

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://dgd2010.blog.51cto.com/1539422/1676490 运维经验分享作为一个专题,目前共7篇文章 <运维经验分享(一)-- Linux Shell之ChatterServer服务控制脚本> <运维经验分享(二)-- Linux Shell之ChatterServer服务控制脚本二次优化> <运维经验分享(三)-- 解决Ubuntu下cro