`
wxl24life
  • 浏览: 293315 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

cygwin 下使用 shell 时碰到的几个问题

阅读更多

最近在研究的开源工具包下提供了几个command line工具,通常在/bin目录下提供的是shell script,为了多系统下运行的方便(主要是win),通常也会提供/bat目录,其中包含了与/bin下shell script对应重写后的.bat批处理文件。针对shell script,最简单也是极力推荐的执行方式当然是在*nix环境下了。但是,如果就是想在win下运行怎么办?没错,通常需要cygwin的帮助,cygwin模拟了*nix shell环境,可以执行多数的shell命令。但是,因为毕竟是在win下模拟,环境的差异还是会影响到一些小的细节的处理。

 

下面是我今天碰到的几个问题

1. 第一个问题,关于java classpath。cygwin下处理win路径时,通常需要把/cygwin作为顶层目录,比如,对于win路径 c:\mypath,其对应的cygwin下路径是 /cygwin/c/mypath。在cygwin下如果往classpath中添加/cygwin/c/mypath,java命令将无法找到classpath,从而提示ClassDefNotFoundError。 cygpath -wp 命令可以将cygwin路径转换为win路径。

 

 

$ cygpath -wp /cygdrive/c:/cygdrive/c/classes
c:\;c:\classes

 

可以参考这个页面http://www.inonit.com/cygwin/faq/

 

2. 第二个问题是,在cygwin下编写shell script是,script在执行的时候,其中包含的空行会提示 /r. command not found错误信息。这是win dos与*nix文本编辑方式不同造成的。可以使用cygwin工具dos2unix将script改为unix格式。参考这个页面http://www.tamilramasamy.com/2008/07/r-command-not-found-in-cygwin.html

 

3. 第三个问题是, shell基本命令source, exec等的用法。参考http://bbs.chinaunix.net/forum.php?

mod=viewthread&tid=218853&page=6#pid1583329(另外强烈推荐CU上的这个系列“shell十三问”http://bbs.chinaunix.net/thread-218853-1-1.html

 

总结今天的工作,虽然没有直接在Linux下运行那些脚本,而且其间碰到了很多的错误,但是收获就在于,只要认真搜索,所有的问题都可以解决。尽管如此,还是建议如果想学习shell的话还是从linux下开始吧。


分享到:
评论

相关推荐

    cygwin使用手册

    对于已经熟悉 Windows 操作系统的用户来说,使用 Cygwin 需要了解几个关键概念:安装过程、基本命令行操作以及如何管理软件包。首先,通过 Cygwin 安装程序选择所需软件包并进行安装。安装完成后,打开 Cygwin 终端...

    cygwin1.dll

    遇到这类问题时,通常需要检查以下几点: 1. **更新Cygwin**:确保所有Cygwin组件都是最新版本,包括`cygwin1.dll`。 2. **正确配置环境变量**:检查PATH环境变量是否包含了Cygwin的bin目录。 3. **重新安装**:...

    Cygwin安装详细步骤

    虽然这不是运行DB2所必需的,但它方便你在日后测试和使用Cygwin Shell(bash)。 通过以上步骤,你将成功安装Cygwin并配置了GCC编译器,使得在Windows环境下可以编写、编译和运行C或C++代码,享受类似Linux的开发...

    在window下使用cygwin安装node.pdf

    安装完成后,你会看到几个快捷方式,其中“Cygwin Bash Shell”图标是进行后续步骤的主要工具。 第二步是下载并安装Node.js。你可以从Node.js官方网站(nodejs.org)下载Windows版本,将其解压到Cygwin的/bin目录下...

    安卓厨房cygwin

    当"cygwin用于安卓厨房烦人呢结合体给你hi呕吐死题事件后提示"这句话中,可能是在描述在使用Cygwin与安卓厨房整合时遇到的问题。这可能是由于配置不当、依赖库缺失或版本不兼容导致的。解决这类问题通常需要检查以下...

    cygwin离线安装包

    这个“cygwin离线安装包”正是为了解决在线安装过程中可能遇到的问题,比如网络不稳定、速度慢或服务器访问限制等问题。 Cygwin 的安装分为在线安装和离线安装两种方式。在线安装通常通过 Cygwin 的 setup.exe 程序...

    cygwin安装sshd服务并配置无密码登录

    首先,安装sshd服务的过程涉及以下几个关键步骤: 1. 安装Cygwin:确保你已经下载并安装了Cygwin,包含了`openssh`包。在安装过程中,选择`Devel`类别下的`openssh`组件。 2. 安装sshd服务:打开Cygwin终端,使用`...

    cygwin的ssh安装包

    总结来说,Cygwin 的 SSH 安装包为 Windows 用户提供了在本地环境下使用 SSH 的能力,无论是作为客户端连接远程服务器,还是作为服务器接受远程连接。通过离线安装包,用户可以更方便地在没有网络的环境中部署和配置...

    cygwin完全安装步骤方法

    通过以上步骤,你将成功地在Windows上搭建起一个完整的Cygwin环境,这将极大地扩展你在Windows下的开发能力,无论是对GCC的使用还是其他Unix工具的调用,都将变得更加方便。安装Cygwin后,你可以像在Linux环境中一样...

    Cygwin安装说明文档

    Cygwin提供了大量的Unix风格的工具,如bash shell、gcc编译器等,使得开发人员可以在Windows环境下使用熟悉的Unix命令进行开发工作。 #### 二、Cygwin安装步骤详解 **Step 1: 下载Cygwin安装程序** - 访问Cygwin...

    Win10不需要Cygwin搭建大数据测试环境搭建hive的bin文件(包含官方版本中缺少的cmd文件)hive)

    在Windows 10环境下搭建大数据测试环境,Hive是一个常用的数据仓库工具,它通常与Linux系统结合使用。然而,对于Windows用户来说,由于Hive原生不支持Windows,所以传统方法需要借助Cygwin这样的模拟Linux环境来运行...

    在64位windows下的bison 3.7和flex 2.6.4

    配置过程包括以下几个步骤: 1. 安装Cygwin:访问Cygwin官方网站,下载最新版本的安装程序,然后按照向导进行安装,确保在选择软件包时包含了Bison和Flex。 2. 设置环境变量:在Cygwin环境中,可能需要设置一些...

    nuttx-README.pdf

    文档中提到了在使用Cygwin构建NuttX时可能会遇到的问题,如路径问题(Strange Path Problems)以及Windows本地工具链的问题(Window Native Toolchain Issues)。 8. 文档和环境: 最后,文档自身强调了它是一个...

    linux_win 模拟器

    在使用Linux_Win模拟器和Cygwin时,用户应注意以下几点: 1. 安装过程:确保按照官方或软件提供的指南正确安装Cygwin,以避免遇到兼容性问题。 2. 更新与维护:定期检查并更新Cygwin,以获取最新的软件包和安全补丁...

    windows下安装云计算环境hadoop的完整步骤

    为了测试 Hadoop 的 MapReduce 功能,需要先创建一个输入目录,如 `input-dir`,并在其中放置几个测试文件(如 `input-a.txt`、`input-b.txt` 和 `input-c.txt`)。这些文件中的数据可以随意编写。 #### 步骤七:...

Global site tag (gtag.js) - Google Analytics