• 出现这个提示原因是文件格式的问题。

    如果你是在windows下写的脚本,可能有些不可见的字符,传到linux或unix上执行就会报这个错误。

    如果是DOS格式的文件,每一行的行尾以\r\n来标识, 其ASCII码分别是0x0D, 0x0A.

    首先查看你的文件格式是DOS格式还是UNIX格式或者MAC格式。

    如何判断文件格式?

    vi filename

    :set ff?

    这时你可以看到是dos或者unix字样。如果是dos格式,使用set ff=unix把它强制转换为unix格式,保存退出即可。

    joe filename

    如果是DOS格式的, 那么行尾会有很多绿色的^M字样出现. 你也可以用上述办法把它转为UNIX格式的.

    od -t x1 filename

    如果你看到有0d 0a 这样的字符, 那么它是dos格式的, 如果只有0a而没有0d, 那么它是UNIX格式的, 同样可以用上述方法把它转为UNIX格式的.

    转换不同平台的文本文件格式也可以用这些工具:

    unix2dos或dos2unix

    sed 's/^M//' filename > tmp_filename
    mv -f tmp_filename filename

    ^M并不是按键shift + 6产生的^和字母M, 它是一个字符, 其ASCII是0x0D, 生成它的办法是先按CTRL+V, 然后再回车(或CTRL+M)

  • 2009-08-18

    atime/ctime/mtime - [SHELL]

    1、含义:
      文件的 Access time,atime 是在读取文件或者执行文件时更改的;
      文件的 Modified time,mtime 是在写入文件时随文件内容的更改而更改的;
      文件的 Create time,ctime 是在写入文件、更改所有者、权限或链接设置时随 Inode 的内容更改而更改的。
     
     
    2、文件各种事件标记的显示方法
     
      ls -lc filename         列出文件的 ctime
      ls -lu filename         列出文件的 atime
      ls -l filename          列出文件的 mtime 
     
      修改文件,-mtime 改了, -ctime 也会改.
      访问文件,-atime 改了, -ctime 没变.
      chown, chgrp, chmod,mv, 都会使 -ctime 改变,但不影响 -atime 和 -mtime.
      touch 可以改 -mtime and/or -atime,但 touch -a 只改访问时间时,-ctime也改了.
      touch -m 改修改时间时,-ctime当然也改了
  • 给大家介绍两款网络同步工具。

    DropBox

    DropBox就是一款非常好用的免费网络文件同步工具(当然它也算是一个服务)。当你在电脑A使用DropBox时,指定文件夹里所有文件的改动均会自动地“同步” 到DropBox的服务器,当下次你在电脑B需要使用这些文件时,你只需登录你的账户,所有被同步的文件均会自动下载到B电脑中,同样,你在电脑B对某文件的修改,也会体现在电脑A上,而所有这一切均是全自动的。

    使用DropBox前,需要先安装它的桌面客户端,DropBox提供了Windows、Mac和 Linux 版本,可以跨平台实现文件同步!并且它还提供Web访问功能,当你在不方便安装客户端的地方可以通过Web在浏览器访问你的文件,将它们下载回来使用。
       
    DropBox的 Windows 版客户端与Windows 集成得很好(Mac版的我还没用过不好说),直接将文件拷贝进设定好的同步目录,它们就能瞬间(总之很快啦)实现文件同步。当该文件的图标左下角出现绿色的钩钩就表示它已经同步好了。当然DropBox还可以自动同步更新修改后的文件。并且,你还可以设置文件夹属性为公开或者私有,甚至将其共享给朋友共同操作编辑。除此而外,DropBox还提供版本控制,即使误删文档也能够复原。
       
    DropBox的特性:

    1、处基本的客户端外,DropBox提供 web 访问,可以很方便地在任何地方访问自己的文件。
    2、DropBox提供文件共享功能,并且能支持文件下载地址的外链(非下载页面);DropBox文件链接路径的形式都是“固定目录+文件名” 文件名是完全自定义的,而不像有些网盘把文件名变成一串随机数字。
    3、免费用户拥有2G容量,对很多人来说已经足够了,并且免费用户稳定性也极高,至少我到现在均没发现连接失败的情况,上传下载速度在国内均很快,完全可以接受的。
    4、提供文件版本控制功能,这个功能可以说是灰常爽的!!接触过编程的朋友如果用过SVN/CVS等版本控制的话,就知道它有多爽了。
    5、你对文件修改后不需要手动去上传文件,DropBox会自动在后台为你静默同步的。同样,在别的电脑修改文件后你也不需手动下载,DropBox也会自动为你更新本地的文件的。
    6、DropBox对图片的支持更好,它整合了相册功能,让你的照片同步更方便。
    7、DropBox具有协同合作的功能,可以邀请朋友共同对某一文件夹内的文件进行编辑与更新。
    由于DropBox的同步特性,我们可以很方便地打造出一些很实用的同步应用。例如 DropBox同步 网博士、OneNote、网文快捕等软件的数据库打造无处不在的笔记本。如果你使用EverNote3,虽然它本身提供网络同步功能,可是免费用户仅有40M/月的流量,基本上都不够用的,这时我们也可以用DropBox同步EverNote的数据库,实现山寨版的同步功能,呵呵。又如将 DropBox与 KeePass 合用打造移动密码库、同步你的工作目录、编程代码、文档报表、相册照片……

     

    SugarSync

    它除了不支持Linux之外,几乎集了各家所长,是一个很值得推荐的服务。SugarSync 是来自美国加利福尼亚州的Sharpcast网络存储公司的产品,提供了2.5G免费网络硬盘空间 (推荐朋友注册可以增大自己的免费空间,很容易就能拥有10G以上的空间的),具有数据自动备份、同步、分享等功能,可以非常方便的将你指定的目录同步到你的SugarSync网盘中。

    SugarSync的免费帐户可支持2台电脑与网络硬盘空间同步。除了使用SugarSync提供的PC客户端/Mac客户端外,用户还可通过iPhone/黑莓/Windows Mobile等手机进行访问。