Programming Forums
User Name Password Register
 

RSS Feed
FORUM INDEX | TODAY'S POSTS | UNANSWERED THREADS | ADVANCED SEARCH

Reply
 
Thread Tools Display Modes
Old May 9th, 2006, 10:11 PM   #1
titaniumdecoy
Expert Programmer
 
titaniumdecoy's Avatar
 
Join Date: Nov 2005
Posts: 903
Rep Power: 3 titaniumdecoy is on a distinguished road
Send a message via AIM to titaniumdecoy
Unix commands compatible with Windows?

I'm planning to write a PHP script that makes use of various Unix commands such as `rcs`. I know that Windows has DOS built in which can run some commands such as `cd`, `ls`, etc. I was just wondering what commands are supported under Windows and would be compatible with both systems. Is there a list of supported commands under Windows? I know the vast majority of Unix commands are not compatible with Windows, but I just want to check.

Thanks.
titaniumdecoy is offline   Reply With Quote
Old May 9th, 2006, 10:20 PM   #2
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
This doesn't answer your question completely, but maybe it's a starting place for you. XP actually has two command processors, one for backward compatibility with 16-bit systems. This is the 32-bit set. You will find that 'ls' is not common between the two systems. Better not to jump to any conclusions.

Windows command
ASSOC    Displays or modifies file extension associations.
AT       Schedules commands and programs to run on a computer.
ATTRIB   Displays or changes file attributes.
BREAK    Sets or clears extended CTRL+C checking.
CACLS    Displays or modifies access control lists (ACLs) of files.
CALL     Calls one batch program from another.
CD       Displays the name of or changes the current directory.
CHCP     Displays or sets the active code page number.
CHDIR    Displays the name of or changes the current directory.
CHKDSK   Checks a disk and displays a status report.
CHKNTFS  Displays or modifies the checking of disk at boot time.
CLS      Clears the screen.
CMD      Starts a new instance of the Windows command interpreter.
COLOR    Sets the default console foreground and background colors.
COMP     Compares the contents of two files or sets of files.
COMPACT  Displays or alters the compression of files on NTFS partitions.
CONVERT  Converts FAT volumes to NTFS.  You cannot convert the
         current drive.
COPY     Copies one or more files to another location.
DATE     Displays or sets the date.
DEL      Deletes one or more files.
DIR      Displays a list of files and subdirectories in a directory.
DISKCOMP Compares the contents of two floppy disks.
DISKCOPY Copies the contents of one floppy disk to another.
DOSKEY   Edits command lines, recalls Windows commands, and creates macros.
ECHO     Displays messages, or turns command echoing on or off.
ENDLOCAL Ends localization of environment changes in a batch file.
ERASE    Deletes one or more files.
EXIT     Quits the CMD.EXE program (command interpreter).
FC       Compares two files or sets of files, and displays the differences
         between them.
FIND     Searches for a text string in a file or files.
FINDSTR  Searches for strings in files.
FOR      Runs a specified command for each file in a set of files.
FORMAT   Formats a disk for use with Windows.
FTYPE    Displays or modifies file types used in file extension associations.
GOTO     Directs the Windows command interpreter to a labeled line in a
         batch program.
GRAFTABL Enables Windows to display an extended character set in graphics
         mode.
HELP     Provides Help information for Windows commands.
IF       Performs conditional processing in batch programs.
LABEL    Creates, changes, or deletes the volume label of a disk.
MD       Creates a directory.
MKDIR    Creates a directory.
MODE     Configures a system device.
MORE     Displays output one screen at a time.
MOVE     Moves one or more files from one directory to another directory.
PATH     Displays or sets a search path for executable files.
PAUSE    Suspends processing of a batch file and displays a message.
POPD     Restores the previous value of the current directory saved by PUSHD.
PRINT    Prints a text file.
PROMPT   Changes the Windows command prompt.
PUSHD    Saves the current directory then changes it.
RD       Removes a directory.
RECOVER  Recovers readable information from a bad or defective disk.
REM      Records comments (remarks) in batch files or CONFIG.SYS.
REN      Renames a file or files.
RENAME   Renames a file or files.
REPLACE  Replaces files.
RMDIR    Removes a directory.
SET      Displays, sets, or removes Windows environment variables.
SETLOCAL Begins localization of environment changes in a batch file.
SHIFT    Shifts the position of replaceable parameters in batch files.
SORT     Sorts input.
START    Starts a separate window to run a specified program or command.
SUBST    Associates a path with a drive letter.
TIME     Displays or sets the system time.
TITLE    Sets the window title for a CMD.EXE session.
TREE     Graphically displays the directory structure of a drive or path.
TYPE     Displays the contents of a text file.
VER      Displays the Windows version.
VERIFY   Tells Windows whether to verify that your files are written
         correctly to a disk.
VOL      Displays a disk volume label and serial number.
XCOPY    Copies files and directory trees.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old May 9th, 2006, 10:26 PM   #3
Kaja Fumei
Hobbyist Programmer
 
Join Date: Oct 2005
Posts: 134
Rep Power: 4 Kaja Fumei is on a distinguished road
Windows doesnt have a "ls" command. Instead it has a "dir" command. There are very few that have the same name on both. Google search came up with this seemingly decent comparison chart:
http://yolinux.com/TUTORIALS/unix_for_dos_users.html
Kaja Fumei is offline   Reply With Quote
Old May 9th, 2006, 10:57 PM   #4
titaniumdecoy
Expert Programmer
 
titaniumdecoy's Avatar
 
Join Date: Nov 2005
Posts: 903
Rep Power: 3 titaniumdecoy is on a distinguished road
Send a message via AIM to titaniumdecoy
Thanks, I didn't realize the two were so different.
titaniumdecoy is offline   Reply With Quote
Old May 10th, 2006, 6:58 AM   #5
DaWei
Resident Grouch
 
DaWei's Avatar
 
Join Date: Jun 2005
Posts: 6,453
Rep Power: 10 DaWei is on a distinguished road
If you don't pursue compatibility, the customers and regulatory bodies will eventually shoot you. If you do, you get sued for stealing "look and feel". There's also the ol' "not invented here" syndrome.
__________________
Abstraction doesn't make it impossible to write bad code; it makes it possible to write superior code.
Contributor's Corner: Grumpy on C++ Exceptions DaWei on Pointers
DaWei is offline   Reply With Quote
Old Jul 12th, 2006, 6:15 PM   #6
mackenga
Professional Programmer
 
Join Date: Mar 2005
Location: Glasgow, Scotland
Posts: 317
Rep Power: 4 mackenga is on a distinguished road
Whether this will be useful to you depends on the context, but if you want to add some Unix utilities (like ls, grep, and several other stalwarts) to a Win32 system, you can; do a google for "unix utilities win32" and you should find some useful results. Of course, if you're not in a position to install extra software on the Windows machines in question, this will not help you.

If you are forced to use DOS commands and rework your systems to parse their output, be warned that the name is not the only difference between the likes of DIR and ls; pipes have never really worked well in the DOS shell and there are all kinds of other weird issues. Remember to check out the command-line arguments to the DOS commands; the output from DIR /B is a lot more like ls, which could help you with adaptation of any existing code.

Personally I'd just stick with Unix-like systems. It seems you have very little experience of Win32 systems, and I strongly suspect you're not going to enjoy the culture shock. It's hard to move from a platform where things can be expected to work in a predictable fashion and behave as described in the documentation to a flaky toaster like Windows. My employer operates a Win32 only environment, so I've had to move from Unix development to Win32 (in VB of all languages) and it's quite a come down, stepping off the solid bedrock of C, PHP, Perl, BSD Sockets and the Bourne Shell into the shifting sands land of Win32 and .NET. Aside from the fact that my employer will not pay me to develop on Linux, I can honestly say I see no advantage in this gaudy proprietary closed-source antistandard dungpile of an operating environment.
__________________
"I'm not a genius. Why do I have to suffer?"
mackenga is offline   Reply With Quote
Old Oct 4th, 2006, 10:49 PM   #7
markpalinux
Newbie
 
Join Date: Oct 2006
Posts: 1
Rep Power: 0 markpalinux is on a distinguished road
Here is a link to the the win32 GPL'ed unxutils
http://unxutils.sourceforge.net/

They work great for me, but to get the zip + the update zip. The first zip has path info, the update does not.

If you need more unix on win32 you may want to check out cygwin.

Mark
markpalinux is offline   Reply With Quote
Old Oct 5th, 2006, 8:25 AM   #8
Eoin
Hobbyist Programmer
 
Eoin's Avatar
 
Join Date: Jun 2006
Location: Ireland
Posts: 152
Rep Power: 3 Eoin is on a distinguished road
A fuller alternative to unxutils is Windows Services for UNIX but it may be overkill.
__________________
Visit my website BinaryNotions.
Eoin is offline   Reply With Quote
Reply

Bookmarks

« Previous Thread in Forum | Next Thread in Forum »

Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Forum Jump




DaniWeb IT Discussion Community
All times are GMT -5. The time now is 6:48 AM.

Powered by vBulletin® Version 3.7.0, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Copyright ©2007 DaniWeb® LLC