Saya bertanya-tanya mengapa perintah java -version
itu dapat diakses secara global ?
Saya bisa menjalankannya dari direktori mana saja dan berfungsi:
Bagaimana cara kerjanya?
Seperti inilah PATH
variabel sistem saya :
C:\Program Files (x86)\NVIDIA Corporation\PhysX\Common;
%SystemRoot%\system32;
%SystemRoot%;
%SystemRoot%\System32\Wbem;
%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\
Adapun saya, java.exe
terletak di%programfiles%\java\jre7\bin
command-line
Pacerier
sumber
sumber
java.exe
(ataujava.com
, dll) tidak ada di AndaPATH
ada entri registri lain yang dapat menentukan jalur yang dapat dieksekusi.Jawaban:
Biasanya, ada sekelompok direktori di mana file yang dapat dieksekusi yang berulang kali digunakan dapat ditemukan oleh Windows Anda, tetapi dalam praktiknya tidak ada alasan khusus untuk menggunakan perintah sebagai global atau tidak. Pengembang dulu memasukkannya sebagai "global" di mana pun mereka mau, mereka bebas untuk melakukannya. Jika Anda ingin menggunakan perintah apa pun sebagai "global", Anda perlu menambahkan perintah sebagai "Variabel Lingkungan Windows" . Untuk melakukan ini, Anda dapat menggunakan metode berikut :
Menambahkan secara manual dengan "Properti Sistem Windows":
Menggunakan alat add-on Setx.exe:
Ini bukan bagian dari pengaturan Windows XP standar tetapi alat baris perintah yang disebut setx.exe termasuk dalam Alat Dukungan Windows XP Paket Layanan 2. Alat ini memperluas perintah yang ditetapkan sehingga perubahan permanen dalam variabel lingkungan dapat dibuat. Misalnya, untuk menambahkan folder C: \ Folder Baru ke jalur, perintahnya adalah
Perintah "Set" dapat digunakan dalam prompt perintah bersama dengan pengalihan ke file teks untuk membuat daftar variabel lingkungan saat ini. Perintahnya mungkin
Nama file "C: \ env_list.txt" dapat diganti dengan pilihan Anda.
Microsoft juga memiliki VBScript yang mencantumkan variabel lingkungan di halaman ini .
Bagi mereka yang berpengalaman dengan mengedit Registry, ada cara lain untuk membuat perubahan pada variabel lingkungan. Variabel lingkungan pengguna disimpan dalam Registry di kunci:
Variabel sistem ditemukan pada kunci:
Perhatikan bahwa variabel lingkungan apa pun yang ada dalam formulir yang perlu diperluas (misalnya,% PATH%) harus disimpan dalam registri sebagai nilai registri REG_EXPAND_SZ. Mengedit Registry terutama untuk skrip yang digunakan oleh administrator sistem dan tidak disarankan untuk pengguna PC biasa.
Anda dapat menemukan informasi lebih lanjut di sini.
sumber
%programfiles%\java\jre7\bin
. Folder ini tidak muncul dalam variabel Path sistem saya .."Perintah Global" ditentukan oleh variabel lingkungan Anda.
Tergantung pada OS yang Anda gunakan untuk mengaturnya agak berbeda.
Cara yang paling umum adalah dengan
Klik kanan "My Computer" Pilih "Properties"
Di Windows7 Anda harus memilih "Pengaturan Sistem Lanjut" di panel di sebelah kiri.
Setelah dialog Properti Sistem terbuka, Pilih tab "Advanced".
Di bagian bawah, ada tombol "Variabel Lingkungan"
Dalam Dialog Variabel Lingkungan, Anda akan dapat mengonfigurasi variabel lingkungan per pengguna atau untuk seluruh sistem.
Misalnya, System Variable "Path" yang disederhanakan akan terlihat seperti ini ...
C: \ Program Files \ Java \ jre6 \ bin ; C: \ Ruby19 \ bin;
Dapat dieksekusi di jalur ini dapat dipanggil langsung dari Command Line.
Alasan Anda dapat memanggil calc, mspaint, cmd all dari Run Dialog adalah karena C: \ windows \ system32 ada dalam variabel lingkungan Path.
Anda dapat menambahkan jalur khusus ke variabel lingkungan, berhati-hati untuk tidak menimpa jalur yang ada dan untuk memisahkan jalur menggunakan titik koma. ";"
Anda kemudian dapat menjalankan executable dari path itu langsung di command line tanpa mengetikkan seluruh path, seperti perintah java -version.
Untuk bacaan lebih lanjut silakan lihat tautan berikut ...
Variabel Lingkungan
Memahami dan Mengkonfigurasi Variabel Lingkungan
sumber
Berikut ini sederhana
which
yang menampilkan semua klik perintah di PATH untuk ekstensi PATHEXT saat ini:Masukkan itu
where.cmd
(memungkinkanwhich
untuk datang dari tempat lain jika Anda mendapatkannya!) Dan menyebutnya denganwhere java
.Sekarang, dalam komentar saya di atas, saya menyarankan bahwa jika
java
tidak tidak muncul dalam AndaPATH
, Anda dapat memeriksa diHKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths
[ref] , tapi setelah benar-benar mencoba ini, itu tidak bekerja dengan baris perintah, hanya dengan hal-hal yang digunakanShellExecuteEx
, seperti Mulai Run danstart
perintah CLI.sumber
Saat Anda memasukkan perintah, shell melihat variabel lingkungan bernama PATH (% PATH%, $ PATH tergantung pada OS). Itu permintaan setiap direktori di PATH untuk melihat apakah itu menemukan executable yang cocok dengan perintah yang Anda masukkan. Yang pertama ditemukan akan dieksekusi.
Lihat jawaban lain untuk beberapa cara mengatur variabel PATH.
sumber