Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: From: klaus DOT berndl AT sdm DOT de To: Joerg DOT Schaible AT gft DOT com, cygwin AT sourceware DOT cygnus DOT com Subject: AW: Ultimative way to start Windows NT/2000 programs from bash Date: Mon, 13 Nov 2000 15:07:35 +0100 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2650.21) Content-Type: text/plain; charset="iso-8859-1" > My be you should remove now 95 and 98 from the subject . Has been done. > What about other > executables or script files identified by PATHEXT ? Yes, good point! here is the next iteration (the last one i hope :-) # open any file in the correct program: an associated file-type (see assoc # and ftype at Windows NT/2000) will be opened with the associated program. # Not associated filetypes and files which extension is contained in # $PATHEXT will be opened in the texteditor (here Emacs). Files with # extension .exe and .com will not be opened! function open-file-with-w32 () { for i in $*; do if [ -f "$i" ]; then # get the extension only erg=`echo $i | sed -e 's|.*\.||g;'` # check if we try to open a program if [ "$erg" != "exe" ] && [ "$erg" != "EXE" ] && [ "$erg" != "com" ] && [ "$erg" != "COM" ]; then # check if we try to open a file with a extension from $PATHEXT is_path_ext=`echo "$PATHEXT"\; | grep -i "\.$erg;"` if [ "$is_path_ext" == "" ]; then # check if this extension is associated with a w32-program erg=`cmd /x /c assoc ".$erg" 2>/dev/null` if [ "$erg" != "" ]; then # an associtiation exists therefore this call should # theoretically not produce amn error. cmd /x /c start /b `cygpath -w "$i"` 2>/dev/null else # we must open the file with a text editor because # it is not associated. emacs `cygpath -w "$i"` fi else # files with a extension contained in $PATHEXT will be # opened with the text editor. emacs `cygpath -w "$i"` fi else echo "$i is a program!" fi fi done unset erg is_path_ext; } alias o=open-file-with-w32 -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com