我目前正在使用 Cygwin 运行 kornshell 脚本,该脚本解析 /home/myname/files 目录中存在的文件。到目前为止我一直在手动执行此操作。
有没有办法自动运行它。本质上,我希望 Cygwing 执行以下操作。
到目前为止,我有以下批处理脚本,它打开了 Cygwin,
@echo off
C:
chdir C:\cygwin64\bin
setlocal enableextensions
set TERM= cd /d "%~dp0files" && .\bash --login -i
问题是双重的。上面的内容只会让我进入 /home/myname 目录。它不会继续到 /files 目录。另外,我将如何传递命令来运行 /files 目录中当前的 .ksh 脚本?
我使用以下 Windows 命令脚本在 cygwin 中运行 bash 脚本:
@ECHO off
set UNIXDISK=C:\cygwin64
SET MAKE_MODE=UNIX
set UNIX_PATH_ADD=%UNIXDISK%\bin;%UNIXDISK%\usr\local\bin;%UNIXDISK%\usr\X11R6\bin
set backup_path=%PATH%
rem include change to directory of script
cd %~p1
echo bash -c %~nx1 >junk1.cmd
set path=%UNIX_PATH_ADD%;%PATH%;.
call junk1.cmd
set PATH=%backup_path%
erase junk1.cmd
将“bash_run.cmd”之类的内容保存在路径中的目录中。它会更改到脚本的目录并在 bash 中运行它。我认为它应该与 ksh 一起使用。应使用完整路径指定脚本。
call bash_run.cmd <your script (full path)>