130 likes | 275 Vues
This project aims to develop a script converter that transforms KSH (UNIX command script files) into CMD (Windows command script files) while maintaining equivalent functionalities. The methodology involves implementing a compiler specific to Linux script language, offering user-friendly applications to facilitate conversion. The converter will handle variables, commands, arithmetic operations, and control flow structures. While it supports most KSH features, there are limitations, including unsupported "strings if" commands. The system is designed for easy testing and feature improvement.
E N D
Industrial Project (234313) Script Converter Midway Meeting Students: ItzhakBokris, EfratAharon Supervisors: Amir Lazevnik , Sergey Kadaner
Goals • The Projects’ goal is to develop a script converter • that its input is a .ksh file (UNIX command script • file), and its output is a .cmd file (WINDOWS • command script file) that has the same working • features as the input file. (and vice versa).
Methodology • The project will implement a compiler of the • Linux script language, whose output is • Windows scripts
Achievements Converter which translates the followings: • Variables, parameters, operators and Methods (declarations and usages). • Commands that have no parallel in batch and Library functions. • Comments, strings, echo commands, back and single quotes . • Arithmetic operations and Boolean expressions. • IO and File System commands. • IF, FOR, WHILE and Switch Case commands. • Pipelines • The converter doesn’tsupports the “strings IF commands” ( if [ … ] )
CMD Application • A cmdapplications which provide easy way to use the converter and shows the results about the converting - what the ksh commands which weren’t translated and where they are.Compare the running output with the excepted output.
System Tests • The System Tests allows an easy and fast adding of new tests ( Ksh code sections, input and output that are needed ) and its running checks the following: • Did the translation task worked out well (otherwise what’s the reason). • Running the Batch Scripts and checking if the running was successful and the scripts of both Batch and Ksh are equal (otherwise, what commendations have been failed and where). • Comparison between the running output and the expected output.
Conclusions • The system support most of the Ksh abilities but it is not a perfect system and can still be improved.The system built in a way that allows to add and improve new features easily.The system is testable: you can easily find a “bug” if exists. You can easily check the system output by the System Tests.(Detailed guides of maintenance/ improving the system + using the system + on the software website soon enough).