PDA

View Full Version : System.getProperty("os.name")



mahdi68
دوشنبه 02 فروردین 1389, 15:25 عصر
سلام
من از این متد استفاده میکنم تا اسم سیستم عامل برام نشون بده حالا سوال من اینه که
وقتی رو لینوکس برنامه اجرا میکنم رشته "Linux" برمیگردونه ولی من میخوام نام توزیع هم نشون بده مثلا فدورا یا سوزه و ... برای اینکار باید چیکار کنم ؟؟؟
و اما وقتی رو ویندوز 7 اجرا میکنم رشته "Windows Vista" برمیگردونه !!! مشکل از ویندوزی هست روش اجرا میکنم ؟؟؟ یا همینطوریه ؟؟؟
اگه رو مکینتاش اجرا کنم چه رشته ای برمیگردومه ؟؟؟
متشکرم

mazdadoost
سه شنبه 03 فروردین 1389, 00:57 صبح
سلام
من از این متد استفاده میکنم تا اسم سیستم عامل برام نشون بده حالا سوال من اینه که
وقتی رو لینوکس برنامه اجرا میکنم رشته "Linux" برمیگردونه ولی من میخوام نام توزیع هم نشون بده مثلا فدورا یا سوزه و ... برای اینکار باید چیکار کنم ؟؟؟
و اما وقتی رو ویندوز 7 اجرا میکنم رشته "Windows Vista" برمیگردونه !!! مشکل از ویندوزی هست روش اجرا میکنم ؟؟؟ یا همینطوریه ؟؟؟
اگه رو مکینتاش اجرا کنم چه رشته ای برمیگردومه ؟؟؟
متشکرم
سلام:
http://commons.apache.org/
ببین این خوبه؟
http://commons.apache.org/lang/api-release/org/apache/commons/lang/SystemUtils.html

mahdi68
سه شنبه 03 فروردین 1389, 13:57 عصر
سلام:
http://commons.apache.org/
ببین این خوبه؟
http://commons.apache.org/lang/api-r...stemUtils.html (http://commons.apache.org/lang/api-release/org/apache/commons/lang/SystemUtils.html) __________________

سلام
من تو این لینک ها چیزی که دنبالش بودم نتونستم پیدا کنم !!! این چیزهایی که گفته نام و ورژن سیستم عامل و ... نشون میده ولی نلم توزیع لینوکسی نه !!!

saeedIRHA
چهارشنبه 04 فروردین 1389, 02:49 صبح
Distor‌های مختلف در فایل‌های مختلف version و اسم خودشون رو ذخیره می‌کنن
که برای پیدا کردنش در خط فرمان در لینوکس اصولا به این صورت هست:


1. cat /etc/*lease*
2. cat /etc/*release /etc/*versio

حالا باید خودت با java یک برنامه بنویسی‌ که کار cat رو در این مورد برات انجام بده
موفق باشید

mahdi68
پنج شنبه 05 فروردین 1389, 12:40 عصر
حالا باید خودت با java یک برنامه بنویسی‌ که کار cat رو در این مورد برات انجام بده
آیا میشه از برنامه ترمینال باز کرد بهش پارامتر ارسال بشه و جواب برگردونه ؟؟؟

saeedIRHA
پنج شنبه 05 فروردین 1389, 17:57 عصر
بله؛
http://barnamenevis.org/forum/showthread.php?t=207727

mahdi68
جمعه 06 فروردین 1389, 00:50 صبح
میشه بگین برای اجرا کردن ترمینال چه مسیری باید بدم ؟؟؟

jlover
شنبه 14 فروردین 1389, 10:54 صبح
سلام
لطفن از این استفاده کنید،اگه اون اطلاعاتی که خاستید رو بهتون داد میتونید از نسخه ی دیگه ی متد getenv استفاده کنید :

import java.util.Map;

public class EnvMap {
public static void main (String[] args) {
Map<String, String> env = System.getenv();
for (String envName : env.keySet()) {
System.out.format("%s=%s%n", envName, env.get(envName));
}
}
}

من چون لینوس ندارم نمیتونم امتحانش کنم

mahdi68
شنبه 14 فروردین 1389, 23:13 عصر
میشه یکم بیشتر در مورد این کلاس توضیح بدین
من تست کردم اون چیزی نیست که من میخوام و این خروجی داد

TERM=dumb
SSH_AGENT_PID=1599
IMSETTINGS_MODULE=none
KDEDIRS=/usr
SESSION_MANAGER=local/unix:@/tmp/.ICE-unix/1708,unix/unix:/tmp/.ICE-unix/1708
IMSETTINGS_INTEGRATE_DESKTOP=yes
MAIL=/var/spool/mail/mahdi
XDG_SESSION_COOKIE=8904e06cc2b48cc76ed70b0a4b9175e b-1270319548.388199-426618802
HOSTNAME=localhost.localdomain
PWD=/home/mahdi/Documents
XCURSOR_THEME=default
GTK_IM_MODULE=gtk-im-context-simple
G_BROKEN_FILENAMES=1
NLSPATH=/usr/dt/lib/nls/msg/%L/%N.cat
GS_LIB=
XDG_MENU_PREFIX=kde4-
DISABLE_IMSETTINGS=1
HISTSIZE=1000
XDM_MANAGED=method=classic
DRY_RUN=1
PATH=/usr/lib/qt-3.3/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/bin:/usr/bin:/bin:/usr/games:/usr/local/sbin:/usr/sbin:/sbin:/home/mahdi/bin
KDE_FULL_SESSION=true
QTLIB=/usr/lib/qt-3.3/lib
KDE_IS_PRELINKED=1
XAUTHORITY=/var/run/kdm/.XauthVwuN1W
WINDOWPATH=1
SSH_ASKPASS=/usr/bin/ksshaskpass
SHLVL=3
MOZILLA_FIVE_HOME=/usr/lib/xulrunner-1.9.1
XFILESEARCHPATH=/usr/dt/app-defaults/%L/Dt
XDG_DATA_DIRS=/usr/share/kde-settings/kde-profile/default/share:/usr/local/share:/usr/share
QT_IM_MODULE=xim
LOGNAME=mahdi
GPG_AGENT_INFO=/tmp/gpg-DsKSMf/S.gpg-agent:1625:1
QT_PLUGIN_PATH=/home/mahdi/.kde/lib/kde4/plugins/:/usr/lib/kde4/plugins/
KDE_SESSION_VERSION=4
_=/usr/lib/eclipse/eclipse
XMODIFIERS=@im=none
QTDIR=/usr/lib/qt-3.3
SSH_AUTH_SOCK=/tmp/ssh-ReSXGE1510/agent.1510
DM_CONTROL=/var/run/xdmctl
LD_LIBRARY_PATH=/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/server:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/../lib/i386:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386/client:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0/jre/lib/i386:/usr/lib/xulrunner-1.9.1:/usr/lib/xulrunner-1.9.1
KDE_MULTIHEAD=false
SHELL=/bin/bash
DBUS_SESSION_BUS_ADDRESS=unix:abstract=/tmp/dbus-vBWGEEdJba,guid=180c2601efe838a7d46c42814bb789bc
GTK_RC_FILES=/etc/gtk/gtkrc:/home/mahdi/.gtkrc::/home/mahdi/.kde/share/config/gtkrc
GTK2_RC_FILES=/etc/gtk-2.0/gtkrc:/home/mahdi/.gtkrc-2.0:/home/mahdi/.gtkrc-2.0-kde4:/home/mahdi/.kde/share/config/gtkrc-2.0
KDE_SESSION_UID=500
DESKTOP_SESSION=default
QTINC=/usr/lib/qt-3.3/include
DISPLAY=:0.0
USER=mahdi
HOME=/home/mahdi
HISTCONTROL=ignoreboth
LESSOPEN=|/usr/bin/lesspipe.sh %s
LANG=en_US.UTF-8

jlover
یک شنبه 15 فروردین 1389, 04:18 صبح
من دیروز داشتم این قسمت از Java Tutorials رو میخوندم و این کلاس هم فقط یه مثال هست ...
اطلاعات کامل (دو تا پاراگراف بیشتر نیست ) :
the really big index/Essential Classes > The Platform Environment
با این برنامه لیست تمام متغیرهای محیطی ( متغیرهای سیستم عامل ) به همراه مقدارشون چاپ میشه و ظاهرن لینوس در هیچ متغیر محیطی ای نام توزیع خودش رو نگهداری نمیکنه ! و در اینصورت فقط همون راهی که آقا سعید گفتن یه کارتون میاد...
اگر تونستید بفهمید که مثلن همونطور که "USER=mahdi " یعنی variable name = USER و variable value = mahdi ، یه همچین زوجی برای توزیع لینوکس وجود داشته باشه،اونوقت میتونید توی متد getenv آرگومان نام متغیر رو بفرستید و مقدارش رو هم به همون ترتیبی که در مثال هست دریافت کنید(کلاس سیتم رو بخونید دستتون میاد )
حالا شاید هم نام توزیع لینوس رو بتونید از ترکیب مقادیر متغیرهای دیگه ای که لیست شده بدست بیارید ! ( این فقط یه حدسه،همینجوری به ذهنم رسیده )

پیروز باشید