Các biến môi trường Windows được sử dụng ở đâu? Cho phép hiển thị các thư mục ẩn

Nhiều người dùng PC Windows, chưa kể đến các nhà phát triển, quen thuộc với các vấn đề khi làm việc với các đường dẫn thư mục hoặc tệp dài (hơn 260 ký tự, MAX_PATH).

Bài viết này thảo luận về các cách để loại bỏ di tích này khi phát triển ứng dụng trên nhiều nền tảng khác nhau (WinApi, .Net Framework, .Net Core) và kích hoạt hỗ trợ riêng cho các đường dẫn dài trong Windows 10 (Cập nhật kỷ niệm).

Giành được ứng dụng API

Trong các ứng dụng sử dụng Win API để làm việc với các tệp, công thức loại bỏ giới hạn MAX_PATH đã được biết đến từ thời xa xưa - cần phải sử dụng phiên bản Unicode của hàm có đuôi “W” để làm việc với một thư mục hoặc tệp và bắt đầu đường dẫn với tiền tố \\?\. Điều này cho phép sử dụng đường dẫn dài tới 32767 ký tự.

Trong Windows 10 (1607), hoạt động của các chức năng làm việc với tệp đã thay đổi: giờ đây có thể tắt tính năng kiểm tra các hạn chế MAX_PATH ở cấp hệ thống.

Điều này ảnh hưởng đến các chức năng sau:

Để làm việc với các thư mục: CreateDirectoryW, CreateDirectoryExW, GetCurrentDirectoryW, RemoveDirectoryW, SetCurrentDirectoryW. Và để làm việc với các tập tin: CopyFileW, CopyFile2, CopyFileExW, CreateFileW, CreateFile2, CreateHardLinkW, CreateSymbolicLinkW, DeleteFileW, FindFirstFileW, FindFirstFileExW, FindNextFileW, GetFileAttributionW, GetFileAttributionExW, SetFileAttributionW, GetFullPathNameW, GetLongPathNameW, MoveFileW, Mo veFileExW, MoveFileWithProgressW, AlternativeFileW, SearchPathW, FindFirstFileNameW,NextFindFileNameW, Find FirstStreamW, FindNextStreamW , GetCompressionFileSizeW, GetFinalPathNameByHandleW.


Điều này giúp loại bỏ sự cần thiết của tiền tố \\?\ và có khả năng mang lại cho các ứng dụng chạy trực tiếp hoặc gián tiếp thông qua Win API cơ hội nhận được hỗ trợ cho các đường dẫn dài mà không cần phải xây dựng lại chúng. Cách kích hoạt tính năng này được mô tả ở cuối bài viết.

.Nền tảng NET

Mặc dù .Net Framework sử dụng Win API để làm việc với các tệp nhưng thay đổi trước đó sẽ không mang lại kết quả, bởi vì Mã BCL đã tích hợp sẵn các kiểm tra sơ bộ về tính cho phép của độ dài của tên thư mục và tệp, đồng thời nó thậm chí còn không đến mức gọi các hàm Win API, đưa ra một ngoại lệ đã biết. Do có nhiều yêu cầu từ cộng đồng (hơn 4500 trên UserVoice), trong phiên bản 4.6.2, việc kiểm tra các hạn chế về độ dài đường dẫn đã bị xóa khỏi mã BCL, để lại việc này cho hệ điều hành và hệ thống tệp!

Đây là những gì nó mang lại:

  • Bằng cách sử dụng tiền tố “\\?\”, chúng ta có thể làm việc với các đường dẫn dài như trong Win API, Directory.CreateDirectory("\\\\?\\" + long_dir_name);
  • Nếu bạn bật hỗ trợ riêng cho tên tệp dài trong Windows 10 (1607), bạn thậm chí không cần sử dụng tiền tố!
Cách bật nó lên:
  • Sử dụng .Net Framework 4.6.2 làm mục tiêu khi xây dựng ứng dụng.
  • Ví dụ: sử dụng tệp cấu hình nếu ứng dụng đã được xây dựng trên .Net 4.0:

Lõi .Net

Tại đây, hỗ trợ cho đường dẫn dài đã được công bố vào tháng 11 năm 2015. Rõ ràng bản chất Nguồn mở của dự án và việc thiếu nhu cầu nghiêm ngặt về đảm bảo khả năng tương thích ngược đã có tác động.

Cách bật nó lên:
Mọi thứ đều hoạt động tốt. Không giống như cách triển khai trong .Net Framework, không cần thêm tiền tố “\\?\” - nó được thêm tự động nếu cần.

Ở đây bạn có thể xem một ví dụ.

Cách bật hỗ trợ đường dẫn dài trong Windows 10 (1607)

Tính năng này được tắt theo mặc định. Điều này là do tính năng này đang ở giai đoạn thử nghiệm và cần phát triển nhiều hệ thống con cũng như ứng dụng khác nhau để được hỗ trợ đầy đủ.

Bạn có thể bật hỗ trợ tích hợp cho các đường dẫn dài bằng cách tạo hoặc thay đổi tham số đăng ký hệ thống sau: Tham số HKLM\SYSTEM\CurrentControlSet\Control\FileSystem LongPathsEnabled (Loại: REG_DWORD) 1 – tương ứng với giá trị được bật.

Hoặc thông qua chính sách nhóm (Win+R\gpedit.msc) Cấu hình máy tính > Mẫu quản trị > Hệ thống > Hệ thống tệp > Bật đường dẫn dài NTFS. Nó giống nhau trong phiên bản bản địa hóa: Cấu hình máy tính > Mẫu quản trị > Hệ thống > Hệ thống tệp > Bật đường dẫn dài Win32.

Hơn nữa, các nguồn không thống nhất về bản tuyên ngôn (hoặc tôi đã hiểu nhầm nhưng hiện tại tôi không có cách nào kiểm tra). Ví dụ: tài liệu MSDN nêu rõ rằng có thể sử dụng một bảng kê khai như một cách thay thế để kích hoạt hỗ trợ đường dẫn dài trong các ứng dụng riêng lẻ và blog MSDN nêu rõ rằng đây là bước bắt buộc thứ hai sau khi kích hoạt nó trong chính sách.
Nhưng họ đồng ý ở dạng chỉ định tùy chọn này:

ĐÚNG VẬY
Thật không may, điều này hiện không hoạt động với CMD, do đặc thù của việc làm việc với các đường dẫn, nhưng trong PowerShell mọi thứ sẽ hoạt động.

tái bút

Điều này kết thúc bài đăng nhỏ vào thứ Sáu của tôi, loại bỏ các câu hỏi về tính đầy đủ của việc triển khai hỗ trợ cho các đường dẫn dài trong Windows 10 (1607) hoặc hiệu suất khi sử dụng các kết hợp khác nhau của phiên bản Windows, hệ thống tệp và API. Bài đăng sẽ được cập nhật khi có sự kiện mới và kết quả thử nghiệm.

Cám ơn vì sự quan tâm của bạn!

Thư mục "Dữ liệu chương trình" chứa thông tin người dùng của các ứng dụng khác nhau (lịch sử, cài đặt, phiên, dấu trang, tệp tạm thời, v.v.). Theo thời gian, nó trở nên bị tắc với nhiều dữ liệu khác nhau có thể không còn cần thiết nữa mà chỉ chiếm dung lượng ổ đĩa. Trong trường hợp này, việc dọn sạch thư mục này là điều hợp lý. Ngoài ra, nếu khi cài đặt lại hệ điều hành, người dùng muốn lưu cài đặt và dữ liệu mà mình đã sử dụng trong nhiều chương trình khác nhau trước đó thì cần chuyển nội dung của thư mục này từ hệ thống cũ sang hệ thống mới bằng cách sao chép nó. Nhưng trước tiên bạn cần tìm vị trí của nó. Hãy cùng tìm hiểu cách thực hiện việc này trên máy tính chạy hệ điều hành Windows 7 nhé.

Tên "Dữ liệu chương trình" là viết tắt của “Dữ liệu ứng dụng”, nghĩa là được dịch sang tiếng Nga có nghĩa là “dữ liệu ứng dụng”. Trên thực tế, trong Windows XP thư mục này có tên đầy đủ, trong các phiên bản sau này được rút ngắn thành tên hiện tại. Như đã đề cập ở trên, thư mục này chứa dữ liệu tích lũy trong quá trình hoạt động của các chương trình ứng dụng, trò chơi và các ứng dụng khác. Có thể có nhiều thư mục có tên này trên máy tính của bạn, nhưng có nhiều thư mục. Mỗi người trong số họ tương ứng với một tài khoản người dùng riêng biệt được tạo. Trong danh mục "Dữ liệu chương trình" Có ba thư mục con:

  • "Địa phương";
  • "Thấp cục bộ";
  • "Chuyển vùng".

Mỗi thư mục con này chứa các thư mục có tên giống với tên của các ứng dụng tương ứng. Những thư mục này cần được dọn sạch để giải phóng dung lượng ổ đĩa.

Cho phép hiển thị các thư mục ẩn

Bạn nên biết rằng thư mục "Dữ liệu chương trình» bị ẩn theo mặc định. Điều này được thực hiện để ngăn người dùng thiếu kinh nghiệm xóa nhầm dữ liệu quan trọng có trong đó hoặc toàn bộ dữ liệu đó. Nhưng để tìm thấy thư mục này, chúng ta cần kích hoạt khả năng hiển thị các thư mục ẩn. Trước khi chuyển sang phương pháp phát hiện "Dữ liệu chương trình", hãy cùng tìm hiểu cách thực hiện việc này. Có một số tùy chọn để cho phép hiển thị các thư mục và tệp ẩn. Những người dùng muốn làm quen với chúng có thể làm như vậy bằng cách sử dụng một bài viết riêng trên trang web của chúng tôi. Ở đây chúng tôi sẽ chỉ xem xét một lựa chọn.


Hiển thị các thư mục ẩn sẽ được kích hoạt.

Cách 1: Trường tìm kiếm chương trình và file

Bây giờ chúng ta hãy chuyển trực tiếp đến các cách mà bạn có thể di chuyển đến thư mục mong muốn hoặc tìm vị trí của nó. Nếu bạn cần phải đi đến "Dữ liệu chương trình" người dùng hiện tại thì việc này có thể được thực hiện bằng cách sử dụng trường "Tìm chương trình và tập tin", nằm trong menu "Bắt đầu".


Trực tiếp vào danh mục "Dữ liệu chương trình" bạn có thể đến đó trực tiếp bằng cách nhập biểu thức vào trường "Tìm chương trình và tập tin".


Cách 2: Chạy công cụ

Một thuật toán rất giống để mở một thư mục "Dữ liệu chương trình" có thể được thực hiện bằng cách sử dụng công cụ hệ thống "Chạy". Phương pháp này, giống như phương pháp trước, phù hợp để mở thư mục cho tài khoản mà người dùng hiện đang làm việc.


Tương tự với phương pháp trước, bạn có thể truy cập ngay vào thư mục "Dữ liệu chương trình".


Cách 3: Thông qua Explorer

Cách tìm địa chỉ và vào thư mục "Dữ liệu chương trình", dành cho tài khoản mà người dùng hiện đang làm việc, chúng tôi đã tìm ra nó. Nhưng nếu bạn cần mở một thư mục "Dữ liệu chương trình" cho một hồ sơ khác? Để làm điều này, bạn cần thực hiện chuyển đổi trực tiếp thông qua "Nhạc trưởng" hoặc nhập địa chỉ vị trí chính xác, nếu bạn đã biết, vào thanh địa chỉ "Nhạc trưởng". Vấn đề là đối với mỗi người dùng, tùy thuộc vào cài đặt hệ thống, vị trí Windows và tên các tài khoản mà đường dẫn này sẽ khác nhau. Nhưng mẫu chung của đường dẫn đến thư mục chứa thư mục mong muốn sẽ trông như thế này:

(system_drive):\Users\(user_name)


Có một số tùy chọn để vào thư mục "Dữ liệu chương trình" và tìm ra vị trí của nó trong Windows 7. Điều này có thể được thực hiện như một phương pháp chuyển đổi trực tiếp bằng cách sử dụng "Nhạc trưởng" và bằng cách đưa các biểu thức lệnh vào các trường của một số công cụ hệ thống. Điều quan trọng cần biết là có thể có một số thư mục có tên tương tự, phù hợp với tên của các tài khoản được tạo trong hệ thống. Vì vậy, bạn cần phải hiểu ngay thư mục nào bạn muốn vào.


Đường dẫn đến một tệp được chỉ định bao gồm một hoặc nhiều thành phần được phân tách bằng ký tự đặc biệt (dấu gạch chéo ngược), với mỗi thành phần thường là tên thư mục hoặc tên tệp, nhưng có một số ngoại lệ đáng chú ý được mô tả bên dưới. Điều này thường rất quan trọng trong việc diễn giải một hệ thống đường dẫn: phần đầu hoặc tiền tố của một đường dẫn trông như thế nào. Tiền tố này chỉ định không gian tên mà đường dẫn sử dụng và ngoài ra, những ký tự đặc biệt nào được sử dụng ở vị trí nào trong đường dẫn, bao gồm cả ký tự cuối cùng.

Nếu thành phần đường dẫn là tên tệp thì nó phải là thành phần cuối cùng.

Mỗi thành phần đường dẫn cũng sẽ bị giới hạn bởi độ dài tối đa được chỉ định cho hệ thống tệp cụ thể. Nói chung, các quy tắc này chia thành hai loại: ngắn và dài. Lưu ý rằng tên thư mục được lưu trữ trong hệ thống tệp dưới dạng một loại tệp đặc biệt, nhưng quy ước đặt tên cho tệp cũng áp dụng cho tên thư mục. Vì vậy, đường dẫn chỉ đơn giản là một chuỗi biểu diễn thứ bậc giữa tất cả các thư mục tồn tại cho một tệp hoặc tên thư mục cụ thể.

Đường dẫn đầy đủ và tương đối

Đối với các hàm API của Windows thao tác với tệp, tên tệp thường có thể liên quan đến thư mục hiện tại, trong khi một số API yêu cầu đường dẫn đầy đủ. Tên tệp đề cập đến thư mục hiện tại trừ khi nó bắt đầu bằng:

  • Tên UNC của bất kỳ định dạng nào luôn bắt đầu bằng hai ký tự dấu gạch chéo ngược ("\\").
  • Ký hiệu ổ đĩa theo sau là dấu gạch chéo ngược, chẳng hạn như "C:\" hoặc "d:\".
  • Một dấu gạch chéo ngược đơn, chẳng hạn như "directory\" hoặc "\file.txt" Đây còn được gọi là đường dẫn tuyệt đối.
Nếu tên tệp chỉ bắt đầu bằng con trỏ ổ đĩa chứ không phải bằng dấu gạch chéo ngược sau dấu hai chấm thì nó được hiểu là đường dẫn tương đối đến thư mục hiện tại trên ký tự ổ đĩa được chỉ định. Lưu ý rằng thư mục hiện tại có thể là thư mục gốc hoặc không tùy thuộc vào thư mục được đặt trong thao tác "thay đổi thư mục" cuối cùng trên ổ đĩa đó. Ví dụ về định dạng này trông như thế này:
  • "C:tmp.txt" dùng để chỉ tệp có tên "tmp.txt" trong thư mục hiện tại trên ổ C.
  • "C:tempdir\tmp.txt" dùng để chỉ một tệp trong thư mục con của thư mục hiện tại trên ổ C.
Một đường đi cũng được coi là tương đối nếu nó chứa "hai điểm"; nghĩa là hai giai đoạn cùng nhau trong một thành phần đường dẫn. Vòng loại đặc biệt này được sử dụng để chỉ định thư mục phía trên thư mục hiện tại, còn được gọi là "thư mục mẹ". Ví dụ về định dạng này trông như thế này:
  • "..\tmp.txt" trỏ đến một tệp có tên tmp.txt, nằm trong thư mục mẹ của thư mục hiện tại.
  • "..\..\tmp.txt" trỏ đến một tệp nằm ở hai thư mục phía trên thư mục hiện tại.
  • "..\tempdir\tmp.txt" chỉ định một tệp có tên tmp.txt nằm trong thư mục có tên tempdir trong cùng thư mục của thư mục hiện tại.
Đường dẫn tương đối có thể kết hợp cả hai loại ví dụ, ví dụ "C:..\tmp.txt". Điều này rất hữu ích vì trong khi hệ thống theo dõi ổ đĩa hiện tại cùng với thư mục hiện tại của ổ đĩa đó, nó cũng theo dõi các thư mục hiện tại trong mỗi ký tự ổ đĩa khác nhau (nếu hệ thống của bạn có nhiều hơn một), bất kể ổ đĩa nào là được chỉ định là ổ đĩa hiện tại.

Giới hạn độ dài đường dẫn tối đa

Trong API Windows (với một số ngoại lệ sẽ được thảo luận trong các đoạn văn sau), có độ dài đường dẫn tối đa trong max_path được xác định là 260 ký tự. Đường dẫn cục bộ được cấu trúc theo thứ tự sau: ký tự ổ đĩa, dấu hai chấm, dấu gạch chéo ngược, các thành phần tên được phân tách bằng dấu gạch chéo ngược và ký tự null kết thúc. Ví dụ: đường dẫn tối đa đến ổ D là "D:\some chuỗi đường dẫn 256 ký tự ", trong đó " " đại diện cho ký tự NULL ẩn cho trang mã hệ thống hiện tại. (Các ký tự được sử dụng ở đây để làm rõ và không thể là một phần của chuỗi đường dẫn hợp lệ.)

Các hàm I/O của tệp trong API Windows chuyển đổi "/" thành "\" như một phần của quá trình chuyển đổi tên thành tên loại NT, trừ khi tiền tố "\\?\" được sử dụng.

Có nhiều hàm trong Windows API cũng có phiên bản Unicode để cho phép độ dài đường dẫn mở rộng với tổng độ dài đường dẫn tối đa là 32.767 ký tự. Loại đường dẫn này bao gồm các thành phần được phân tách bằng dấu gạch chéo ngược, mỗi thành phần có giá trị tối đa được trả về trong tham số LpmaximumcomComponentlength của hàm GetVolumeInformation (giá trị này thường là 255 ký tự). Để chỉ định đường dẫn có độ dài mở rộng, hãy sử dụng tiền tố "\\?\". Ví dụ?\\" ?\D:\very_long_path".

Lưu ý rằng đường dẫn tối đa 32.767 ký tự là gần đúng vì tiền tố "\\?\" có thể được hệ thống mở rộng thành chuỗi dài hơn trong thời gian chạy và việc mở rộng này được áp dụng cho tổng chiều dài.

Tiền tố tương tự này cũng có thể được sử dụng với các đường dẫn được xây dựng theo Quy ước đặt tên phổ quát (UNC). Để chỉ định đường dẫn như vậy bằng UNC, hãy sử dụng "\\?\UNC\". Ví dụ?\\",\UNC path\\server\share", trong đó "server" là tên của máy tính và "share" là tên của thư mục dùng chung. Những tiền tố này không được sử dụng như một phần của đường dẫn. Chúng chỉ ra rằng đường dẫn phải được chuyển đến hệ thống với ít sửa đổi nhất, nghĩa là bạn không thể sử dụng dấu gạch chéo lên để biểu thị dấu phân cách đường dẫn hoặc dấu chấm để biểu thị thư mục hiện tại hoặc dấu chấm kép để biểu thị thư mục mẹ. Vì bạn không thể sử dụng tiền tố "\\?\" với đường dẫn tương đối, nên đường dẫn tương đối luôn bị giới hạn ở tổng số MAX_PATH ký tự.

Không cần phải làm bất cứ điều gì để chuẩn hóa Unicode trong chuỗi đường dẫn và tên tệp cho các hàm API I/O của tệp Windows, vì hệ thống tệp xử lý đường dẫn và tên tệp dưới dạng một chuỗi các giá trị wchar. Mọi quá trình chuẩn hóa cần thiết cho ứng dụng của bạn đều phải được thực hiện với điều này, bên ngoài bất kỳ lệnh gọi nào được thực hiện tới tệp chức năng API I/O của Windows.

Khi sử dụng API để tạo thư mục, đường dẫn đã chỉ định không được dài đến mức không thể thêm tên tệp 8.3 (nghĩa là tên thư mục không được vượt quá MAX_PATH trừ 12).

Shell và hệ thống tập tin có các yêu cầu khác nhau. Có thể tạo đường dẫn bằng API Windows mà giao diện người dùng shell không thể diễn giải chính xác.

Bắt đầu với Windows 10 phiên bản 1607, các hạn chế MAX_PATH đã bị xóa khỏi các thư mục tính năng và tệp Win32 được chia sẻ. Tuy nhiên, cần phải chọn một hành vi mới. Sổ đăng ký cho phép bạn bật hoặc tắt hành vi đường dẫn dài mới. Để kích hoạt đường dẫn dài, hãy đặt khoá đăng ký thành

HKLM\SYSTEM\CurrentControlSet\Control\FileSystem LongPathsEnabled (Loại: reg_dword). Giá trị khóa sẽ được hệ thống lưu vào bộ nhớ đệm (mỗi quy trình) sau lệnh gọi đầu tiên đến chức năng thư mục hoặc tệp Win32. Khóa đăng ký sẽ không được tải lại trong suốt quá trình. Có thể cần phải khởi động lại để tất cả các ứng dụng trên hệ thống nhận ra giá trị của khóa vì một số quy trình có thể đã bắt đầu trước khi khóa được đặt.

Bạn cũng có thể kích hoạt hành vi đường dẫn dài mới trên cơ sở từng ứng dụng thông qua tệp kê khai:

ĐÚNG VẬY Đây là các chức năng quản lý thư mục sẽ không có giới hạn max_path nếu bạn bật đường dẫn dài: CreateDirectoryW, CreateDirectoryExW GetCurrentDirectoryW RemoveDirectoryW SetCurrentDirectoryW.

Phần này liên quan đến:
  • Nền tảng: Solaris SPARC, Red Hat Linux, SUSE Linux, Oracle Linux, Windows 10, Windows 8, Windows 7, Vista, Windows XP, Mac OS X

Các hướng dẫn trên trang này chỉ dành cho người dùng và quản trị viên hệ thống có kinh nghiệm.


Thông tin chung

  • Biến đổi CON ĐƯỜNG là một biến hệ thống mà hệ điều hành sử dụng để tìm các đối tượng thực thi mong muốn trên dòng lệnh hoặc cửa sổ terminal.
  • Biến hệ thống CON ĐƯỜNG có thể được thiết lập bằng cách sử dụng tiện ích hệ thống trong Bảng điều khiển Windows hoặc sử dụng tệp khởi động shell Linux và Solaris.
  • Trên máy tính đang chạy các cửa sổ hoặc Mac OS X thực hiện các thay đổi đối với biến hệ thống PATH thường không cần thiết.

các cửa sổ

Windows 10 và Windows 8
  1. Tại dòng "Tìm kiếm", tìm kiếm: Hệ thống (Bảng điều khiển)
  2. Nhấp vào đường dẫn .
  3. Nhấp chuột Biến môi trường. Trong chuong Biến môi trường Thay đổi
  4. Trong cửa sổ (hoặc Biến hệ thống mới ĐƯỢC RỒI ĐƯỢC RỒI.
Windows 7
  1. Trên màn hình nền, nhấp chuột phải vào biểu tượng Máy tính.
  2. Từ menu ngữ cảnh, chọn Của cải.
  3. Nhấp vào đường dẫn Thiết lập hệ thống nâng cao.
  4. Nhấp chuột Biến môi trường. Trong chuong Biến môi trường chọn biến môi trường PATH. Nhấp chuột Thay đổi. Nếu biến PATH không tồn tại, hãy nhấp vào Tạo.
  5. Trong cửa sổ Thay đổi một biến hệ thống(hoặc Biến hệ thống mới) chỉ định giá trị của biến môi trường PATH. Nhấp chuột ĐƯỢC RỒI. Đóng các cửa sổ đang mở khác bằng cách nhấp vào ĐƯỢC RỒI.
  6. Mở lại cửa sổ nhắc lệnh và chạy mã java.
Windows XP
  1. Nhấp chuột Bắt đầu, lựa chọn Bảng điều khiển, nhấp đúp chuột vào Hệ thống và chọn một tab Ngoài ra.
  2. Nhấp chuột Biến môi trường. Trong chuong Biến môi trường chọn biến môi trường PATH. Nhấp chuột Thay đổi. Nếu biến PATH không tồn tại, hãy nhấp vào Tạo.
  3. Trong cửa sổ Thay đổi một biến hệ thống(hoặc Biến hệ thống mới) chỉ định giá trị của biến môi trường PATH. Nhấp chuột ĐƯỢC RỒI. Đóng các cửa sổ đang mở khác bằng cách nhấp vào ĐƯỢC RỒI.
  4. Mở lại cửa sổ nhắc lệnh và chạy mã java.

Mac OS X

Để chạy phiên bản Java khác, hãy cung cấp đường dẫn đầy đủ hoặc sử dụng công cụ java_home:

% /usr/libexec/java_home -v 1.8.0_73 --exec javac -version

Solaris và Linux

  1. Để xem đường dẫn có được cấu hình đúng hay không:
    Trong cửa sổ terminal, nhập:
    % java -version
    Phiên bản của công cụ java sẽ được hiển thị nếu không tìm thấy. Nếu phiên bản đã lỗi thời hoặc xuất hiện lỗi java: không tìm thấy lệnh, thì đường dẫn được đặt không chính xác.
  2. Xác định phiên bản thực thi nào của java là phiên bản đầu tiên được tìm thấy trong một biến CON ĐƯỜNG
    Trong cửa sổ terminal, nhập:
    % java nào
Thiết lập đường dẫn cuối cùng

Để đặt đường dẫn vĩnh viễn, hãy định cấu hình nó trong tệp khởi động.
Ghi chú. Hướng dẫn được cung cấp cho hai shell phổ biến nhất trên Linux và Solaris. Nếu bạn đang sử dụng các shell khác, hãy xem hướng dẫn về cách đặt biến PATH.

vỏ sò

Chỉnh sửa tệp khởi động (~/.bashrc)

  1. Thay đổi một biến CON ĐƯỜNG Biến đổi
    PATH=/usr/local/jdk1.8.0/bin:$PATH
    xuất đường dẫn
  2. Tải tập tin khởi động
    %. /.hồ sơ

  3. % java -version
Vỏ C (csh)

Chỉnh sửa tệp khởi động (~/.cshrc)

  1. Đặt đường dẫn
    đặt đường dẫn=(/usr/local/jdk1.8.0/bin $path)
  2. Lưu thay đổi và đóng cửa sổ
  3. Tải tập tin khởi động
    % nguồn ~/.cshrc
  4. Đảm bảo đường dẫn được đặt bằng cách lặp lại lệnh java
    % java -version