===== From Unix ===== The 'uniq' should not be necessary! ps -ef|grep [[o]]ra_pmon|sed -e 's/.*_//'|sort|uniq ===== From Windows ===== This shows the service name and its state sc query | perl -00 -ne 'print "$1 $2\ " if /^SERVICE_NAME: OracleService(\\w+).TYPE.+?STATE\\s+:\\s+\\d\\s+(\\w+)/s' DEV running To see the value of ORACLE_HOME on Windows, use another sc query: sc qc OracleServiceDEV The ORACLE_HOME and the instance name can be found on the 'BINARY_PATH_NAME' line. SERVICE_NAME: OracleServiceDEV DISPLAY_NAME: Oracle Instance TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 3 DEMAND_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : c:\\oracle\\product\\11.2.0\\db\\bin\\ORACLE.EXE DEV LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : OracleServiceDEV DEPENDENCIES : SERVICE_START_NAME : LocalSystem