Commit Graph

227 Commits

Author SHA1 Message Date
Jason Edmeades 51b0d941d0 cmd: Add for /f delims= support. 2012-10-24 11:30:43 +02:00
Jason Edmeades a45301cb93 cmd: Strip quotes from for /f string before attempting to parse it. 2012-10-24 11:30:40 +02:00
Jason Edmeades 9171fd1454 cmd: Add support for usebackq (for /f). 2012-10-24 11:30:11 +02:00
Jason Edmeades 293da2d06c cmd: Implement support for for /f eol=c option. 2012-10-24 11:29:43 +02:00
Jason Edmeades d64298df99 cmd: Add support parsing for /f options and implement skip. 2012-10-24 11:29:06 +02:00
Frédéric Delanoy c5faceabd2 cmd/tests: Add tests for mixed number/stringified numbers comparisons in "if" statements. 2012-10-23 12:10:56 +02:00
Frédéric Delanoy 5888ad3537 cmd/tests: Add tests for GTR comparison operator in "if" statements. 2012-10-23 12:10:52 +02:00
Frédéric Delanoy 43f5471cba cmd/tests: Add tests for GEQ comparison operator in "if" statements. 2012-10-23 12:10:49 +02:00
Frédéric Delanoy 8e3227c824 cmd/tests: Add tests for NEQ comparison operator in "if" statements. 2012-10-23 12:10:45 +02:00
Frédéric Delanoy a0a61cb592 cmd/tests: Add tests for EQU comparison operator in "if" statements. 2012-10-23 12:10:41 +02:00
Frédéric Delanoy ac52924d44 cmd/tests: Add tests for LEQ comparison operator in "if" statements. 2012-10-23 12:10:38 +02:00
Frédéric Delanoy e3b5b6fd14 cmd/tests: Add tests for LSS comparison operator in "if" statements. 2012-10-23 12:10:32 +02:00
Francois Gouget ed9e745580 Assorted spelling tweaks and fixes. 2012-10-22 12:21:55 +02:00
Jason Edmeades 3c05818515 cmd: Add support for calling a built in command. 2012-10-17 11:59:34 +02:00
Jason Edmeades dccccfc273 cmd: Handle very odd delimiter support for command line. 2012-10-17 11:57:23 +02:00
Jason Edmeades f45f75ca7d cmd: %* expands to first non-whitespace delimiter of first arg. 2012-10-16 11:45:13 +02:00
Jason Edmeades 4236c2007d cmd: Identify the program name using more appropriate parsing. 2012-10-16 11:44:49 +02:00
Jason Edmeades 25cf0aa046 cmd: cmd /c "pgmname" searches all extensions on PATHEXT. 2012-10-16 11:44:32 +02:00
Jason Edmeades 130cdcd727 cmd: Add full support for copy concatenation and ascii/binary. 2012-10-15 15:25:22 +02:00
Jason Edmeades 260210f6e6 cmd: Support copy to an 'ascii' destination. 2012-10-15 15:25:20 +02:00
Jason Edmeades a65314c8fa cmd: Add suite of tests for the copy command. 2012-10-15 15:25:16 +02:00
Jason Edmeades 8f019b1111 cmd: Fix some issues with ~ modifier expansion. 2012-10-15 15:25:14 +02:00
Frédéric Delanoy 3803134fce cmd/tests: Add tests for command line parsing.
Adapted from original patch by Martin Wilck <mwilck@arcor.de>.
2012-10-11 20:38:46 +02:00
Frédéric Delanoy 0ab71a42b4 cmd/tests: Move command line tests to separate file. 2012-10-11 20:37:59 +02:00
Jason Edmeades f252e9dfc8 cmd: Change command line parsing away from argv/argc. 2012-10-03 11:24:13 +02:00
Jason Edmeades 88f14bb590 cmd: Fix basic cmd.exe /c "echo hello" type syntax.
Add checks for existance of command to run in order to keep the
new quote handling capabilities of cmd.exe /C or /K. If the command
cannot be found, drop back to /S processing mode as per cmd.exe help.
2012-10-02 14:08:36 +02:00
Jason Edmeades b1dacc6c37 cmd: cmd.exe /c or /k should suppress copy overwrite prompts. 2012-10-02 14:08:36 +02:00
Jason Edmeades c55cd87632 cmd: Fix setlocal/endlocal implementation. 2012-10-01 14:30:49 +02:00
Jason Edmeades 9dde62cb96 cmd: Add full for /R support. 2012-10-01 14:29:58 +02:00
Jason Edmeades 8fbd65358e cmd: Convert wcmd_for to use WCMD_parameter. 2012-10-01 14:24:48 +02:00
Jason Edmeades cd9451c499 cmd: Display 'set' sort ordering correctly. 2012-09-26 17:49:23 +02:00
Jason Edmeades a810e41e47 cmd: Echo back command with whitespace removed first. 2012-09-26 17:49:11 +02:00
Jason Edmeades 2ff533c1f2 cmd: Support for ^ character at end of line.
Based on a patch by John Chow.
2012-09-26 17:48:59 +02:00
Jason Edmeades d8c0fbcedc cmd: Add circumflex support into command shell. 2012-09-26 17:48:24 +02:00
Jason Edmeades e35b239b41 cmd: Fix parameterization around delimiters. 2012-09-26 17:47:20 +02:00
Francois Gouget 5f55a71b70 Assorted spelling fixes. 2012-09-24 22:27:29 +02:00
Jason Edmeades ebd1810918 cmd: Space does not delimit environment variable names. 2012-09-06 18:23:40 +02:00
Jason Edmeades f9b4c78a89 cmd: A successful set should reset the errorlevel. 2012-09-06 18:23:40 +02:00
Jason Edmeades 141e33b845 cmd: More generic zero iteration for loop fix. 2012-09-05 21:56:52 +02:00
Jason Edmeades 4f71f4af59 cmd: Fix "PATH=value" command. 2012-09-05 13:25:24 +02:00
Jason Edmeades c5a72379a1 cmd: Fix renaming inside directories. 2012-09-04 15:04:01 +02:00
Jason Edmeades 94f9e789c9 cmd: Fix rmdir error during recursive delete. 2012-09-04 15:03:44 +02:00
Jason Edmeades 1a9413b98a cmd: for /l with zero iterations failed to skip its commands. 2012-09-03 15:51:26 +02:00
Jason Edmeades 3a25888f38 cmd: for loops did not respect boundaries. 2012-09-03 15:51:20 +02:00
Christian Costa 6533168089 cmd/tests: If we rewind to the beginning of the line, don't increment line number. 2012-03-27 13:58:19 +02:00
Christian Costa 6520f19181 attrib: Dislay attribute flags in the right order. 2012-03-27 13:57:38 +02:00
Christian Costa a4e2f1d42a attrib: Add 2 missing spaces between attribute flags and filename. 2012-03-27 13:56:37 +02:00
Francois Gouget bc176ecb81 cmd: Print error messages on stderr, not on stdout. 2011-12-02 11:53:23 +01:00
Francois Gouget 66db270d22 cmd/tests: Use resynchronization points to better deal with two IF statements tests. 2011-11-30 16:41:12 +01:00
Francois Gouget 87a770fa73 cmd/tests: Tweak subsection headers so they are treated as resynchronization points. 2011-11-29 13:56:24 +01:00
Francois Gouget 128d0656de cmd/tests: Standardize the batch file section headers. 2011-11-29 13:56:12 +01:00
Francois Gouget 81f64ee906 cmd/tests: Treat lines that start with '---' as resynchronization points. 2011-11-29 13:56:03 +01:00
Frédéric Delanoy e8d8df3c54 cmd: Trim whitespace in echo on/off. 2011-11-15 11:44:40 +01:00
Frédéric Delanoy ecc4d87253 cmd: Fix a comment. 2011-10-28 12:47:10 +02:00
Frédéric Delanoy 45c1dff552 cmd: Make 'if errorlevel' only recognize integer values. 2011-10-28 12:43:27 +02:00
Frédéric Delanoy 6fd9d77426 cmd: Make RENAME work for read-only files. 2011-10-14 20:26:43 +02:00
Frédéric Delanoy d5523fcd80 cmd/tests: Show that read-only files are RENAMEable. 2011-10-14 20:26:43 +02:00
Frédéric Delanoy 1f5c0a6170 cmd/tests: Add tests for directories RENAMEs. 2011-10-14 20:26:43 +02:00
Frédéric Delanoy 1e4c17e5dd cmd: Make MOVE work for read-only files. 2011-10-13 20:07:28 +02:00
Frédéric Delanoy ad9ae2b8ff cmd/tests: Show that read-only files are MOVEable. 2011-10-13 20:07:26 +02:00
Frédéric Delanoy 212949f108 cmd/tests: Add MOVE tests. 2011-10-11 19:43:47 +02:00
Frédéric Delanoy f00aafae85 cmd/tests: Don't convert lines with DOS endings in convert_input_data. 2011-09-28 17:29:45 +02:00
Frédéric Delanoy cf826fe010 cmd/tests: Add RENAME tests. 2011-09-15 15:41:40 +02:00
Frédéric Delanoy ad064b44ed cmd/tests: Add tests for SHIFT builtin. 2011-09-14 17:27:24 +02:00
Frédéric Delanoy 8fff969ce6 cmd/tests: Segment mkdir tests for an easier read. 2011-09-13 17:17:55 +02:00
Frédéric Delanoy 195ee2f377 cmd/tests: Add tests for combined CALLs/GOTOs. 2011-09-12 16:49:56 +02:00
Frédéric Delanoy a33bad1edd cmd: Allow a batch file to delete itself. 2011-09-12 16:49:56 +02:00
Frédéric Delanoy cb63445b5e cmd: Show that windows doesn't lock/prevent access to batch file during execution. 2011-09-12 16:49:56 +02:00
Frédéric Delanoy d029a33453 cmd/tests: Segment CALL tests for an easier read. 2011-09-12 10:07:56 +02:00
Frédéric Delanoy 712276c7bf cmd: Fix IF operands parsing for '==' operator. 2011-09-08 20:08:07 +02:00
Frédéric Delanoy f35d52e20e cmd/tests: Add tests for IF '==' operator. 2011-09-05 19:32:32 +02:00
Frédéric Delanoy ba094f2830 cmd/tests: Add pushd/popd tests. 2011-08-31 19:43:07 +02:00
Octavian Voicu 0b10003d4a cmd/tests: Test del /s recursion in subdirectories with colons. 2011-08-30 17:27:00 +02:00
Frédéric Delanoy 74566422c7 cmd/tests: Add ftype tests. 2011-08-30 17:07:36 +02:00
Frédéric Delanoy 97b074d2da cmd: Fix invalid RegSetValueExW call in WCMD_assoc. 2011-08-30 16:56:03 +02:00
Frédéric Delanoy c08459d0be cmd/tests: Add assoc tests. 2011-08-30 16:55:55 +02:00
Frédéric Delanoy 745fbe084f cmd/tests: Add tests for mixed echo modes. 2011-08-29 13:55:59 +02:00
Frédéric Delanoy a2eb505d2c cmd/tests: Add tests for redirections within IF statements. 2011-08-29 13:55:54 +02:00
Frédéric Delanoy bbdaed2f33 cmd: Fix redirection handle parsing. 2011-08-29 13:55:41 +02:00
Frédéric Delanoy 523683d788 cmd/tests: Add tests for redirections using non stdout/stderr handles. 2011-08-29 13:55:29 +02:00
Frédéric Delanoy 003bdf8e69 cmd: Ignore trailing whitespace when using cd. 2011-08-29 13:55:12 +02:00
Frédéric Delanoy 9b79fd5777 cmd/tests: Add variable substitution tests. 2011-08-26 13:27:41 +02:00
Frédéric Delanoy c85be8aecc cmd: Add @shortpath@ keyword, replaced by expanded path with short names. 2011-08-26 13:27:35 +02:00
Frédéric Delanoy 68e7fcda59 cmd: Add @path@ keyword, replaced by regular non-expanded path. 2011-08-26 13:27:14 +02:00
Frédéric Delanoy 64ce7c0ede cmd: Add @drive@ keyword, replaced by drive letter. 2011-08-26 13:27:05 +02:00
Frédéric Delanoy 1e89625b11 cmd: Add @drive@ keyword, replaced by drive letter. 2011-08-26 13:26:31 +02:00
Frédéric Delanoy 92356ca2b7 cmd/tests: Add tests for FOR /F 'skip' option. 2011-08-26 11:33:01 +02:00
Frédéric Delanoy fef13bf2ca cmd/tests: Add tests for FOR /F 'delims' option. 2011-08-26 11:32:58 +02:00
Frédéric Delanoy 1755885472 cmd/tests: Add tests for FOR /F 'eol' option. 2011-08-26 11:32:52 +02:00
Frédéric Delanoy bf0e1c7ca7 cmd/tests: Add basic FOR /F tests. 2011-08-26 11:32:47 +02:00
Frédéric Delanoy 199f788c31 cmd/tests: Add FOR tests for various quoted parameters. 2011-08-26 11:32:40 +02:00
Frédéric Delanoy 16744ed65e cmd/tests: Ensure ATTRIB tests pass on more Windows platforms.
There can be some default 'I' extended file attribute pertaining to
non-indexable file/folders by Indexing Service, e.g. when using CIFS.
2011-08-26 11:31:59 +02:00
Frédéric Delanoy 3ce59f5dba cmd/tests: Add attrib tests. 2011-08-25 19:15:29 +02:00
Frédéric Delanoy 82cdeb6d4d cmd/tests: Add tests for variables substrings. 2011-08-25 17:56:31 +02:00
Frédéric Delanoy 0decc777eb cmd/tests: Test handling of strings starting with on/off using the ECHO builtin. 2011-08-25 14:51:23 +02:00
Frédéric Delanoy 09655aca95 cmd: Misc tab fixes. 2011-08-25 14:51:16 +02:00
Frédéric Delanoy eda33f22ff cmd: Fix if/else tab handling. 2011-08-25 14:51:02 +02:00
Frédéric Delanoy 6d3fd3abcd cmd: Fix REM tab handling. 2011-08-25 14:50:51 +02:00
Frédéric Delanoy d147df418c cmd/tests: Add REM tests. 2011-08-25 14:50:43 +02:00
Frédéric Delanoy f37ab586d8 cmd: Skip tabs as well as spaces in WCMD_skip_leading_spaces. 2011-08-25 14:50:38 +02:00