Apakah ada perintah baris perintah Windows yang bisa saya gunakan untuk mendapatkan path lengkap ke direktori kerja saat ini?
Juga, bagaimana saya bisa menyimpan jalur ini di dalam variabel yang digunakan dalam file batch?
Apakah ada perintah baris perintah Windows yang bisa saya gunakan untuk mendapatkan path lengkap ke direktori kerja saat ini?
Juga, bagaimana saya bisa menyimpan jalur ini di dalam variabel yang digunakan dalam file batch?
Jawaban:
Gunakan cd
tanpa argumen jika Anda menggunakan shell secara langsung, atau %cd%
jika Anda ingin menggunakannya dalam file batch (berperilaku seperti variabel lingkungan).
Anda dapat mengatur variabel batch / lingkungan sebagai berikut:
SET var=%cd%
ECHO %var%
contoh tangkapan layar dari Windows 7 x64 cmd.exe.
Perbarui: jika Anda melakukanSET var = %cd%
alih-alihSET var=%cd%
, di bawah ini yang terjadi. Terima kasih untuk jeb.
SET var = %cd%
menempatkan nilai dalam variabel var<space>
tidak menjadi var
. Anda harus menghindari spasi dalam perintah SET
Mengutip bantuan Windows untuk set
perintah ( set /?
):
Jika Ekstensi Perintah diaktifkan, maka ada beberapa dinamis variabel lingkungan yang dapat diperluas tetapi tidak muncul di daftar variabel yang ditampilkan oleh SET. Nilai variabel ini adalah dihitung secara dinamis setiap kali nilai variabel diperluas. Jika pengguna secara eksplisit mendefinisikan variabel dengan salah satu dari nama-nama ini, maka definisi itu akan menggantikan definisi dinamis yang dijelaskan di bawah ini: % CD% - memperluas ke string direktori saat ini. % DATE% - memperluas ke tanggal saat ini menggunakan format yang sama dengan perintah DATE. % TIME% - meluas ke waktu saat ini menggunakan format yang sama dengan perintah TIME. % RANDOM% - meluas ke angka desimal acak antara 0 dan 32767. % ERRORLEVEL% - memperluas ke nilai ERRORLEVEL saat ini % CMDEXTVERSION% - memperluas ke Ekstensi Prosesor Perintah saat ini nomor versi. % CMDCMDLINE% - memperluas ke baris perintah asli yang dipanggil Pengolah Perintah.
Catat %CD% - expands to the current directory string.
bagiannya.
Di Unix?
pwd
Ini selalu berhasil untuk saya:
SET CurrentDir="%~dp0"
ECHO The current file path this bat file is executing in is the following:
ECHO %CurrentDir%
Pause
Untuk Windows, cd
dengan sendirinya akan menampilkan direktori kerja saat ini.
Untuk sistem UNIX dan workalike, pwd
akan melakukan tugas yang sama. Anda juga dapat menggunakan $PWD
variabel shell di bawah beberapa shell. Saya tidak yakin apakah Windows mendukung mendapatkan direktori kerja saat ini melalui variabel shell atau tidak.
%cd%
Di Windows:
CHDIR Menampilkan nama atau mengubah direktori saat ini.
Di Linux:
PWD Menampilkan nama direktori saat ini.
Berdasarkan pertanyaan tindak lanjut (simpan data dalam variabel) di komentar ke posting chdir, saya bertaruh dia ingin menyimpan jalur saat ini untuk memulihkannya setelah mengubah direktori.
Pengguna asli harus melihat "pushd", yang mengubah direktori dan mendorong yang sekarang ke tumpukan yang dapat dikembalikan dengan "popd". Pada shell cmd Windows modern apa pun yang harus dilakukan ketika membuat file batch.
Jika Anda benar-benar perlu mengambil lintasan saat ini maka cangkang cmd modern juga memiliki variabel% CD% yang Anda dapat dengan mudah memasukkan dalam variabel lain untuk referensi.
Buat .bat
file di bawah System32
, beri kami nama itu copypath.bat
perintah untuk menyalin jalur saat ini bisa :
echo %cd% | clip
Penjelasan:
%cd%
akan memberi Anda jalur saat ini
CLIP
Description:
Redirects output of command line tools to the Windows clipboard.
This text output can then be pasted into other programs.
Parameter List:
/? Displays this help message.
Examples:
DIR | CLIP Places a copy of the current directory
listing into the Windows clipboard.
CLIP < README.TXT Places a copy of the text from readme.txt
on to the Windows clipboard.
Sekarang copyclip
tersedia dari mana saja.
@echo off
for /f "usebackq tokens=*" %%x in (`chdir`) do set var=%%x
echo The currenct directory is: %var%
Tapi, tentu saja , jawaban gmaran23 adalah yang jauh lebih mudah.
tokens=*
perbaikan itu.
Di prompt perintah Windows, chdir
atau cd
akan mencetak path lengkap direktori kerja saat ini di konsol.
Jika kita ingin menyalin jalan maka kita dapat menggunakan: cd | clip
.
Di Windows, ketikkan cd
untuk jalur saat ini yang berfungsi.
Di Linux, pwd
untuk jalur kerja saat ini.