Saya ingin agar direktori kerja saat ini ditampilkan pada baris perintah powershell, seperti yang akan dilakukan pada prompt CMD (misalnya). Bagaimana saya bisa melakukannya?
Saya ingin agar direktori kerja saat ini ditampilkan pada baris perintah powershell, seperti yang akan dilakukan pada prompt CMD (misalnya). Bagaimana saya bisa melakukannya?
Jawaban:
Lihat ini: http://mshforfun.blogspot.com/2006/05/perfect-prompt-for-windows-powershell.html
Pada dasarnya, Anda dapat membuat file 'profil' bernama Microsoft.PowerShell_profile.ps1 yang akan berjalan setiap kali Anda mulai menjalankan PowerShell.
Bergantung pada siapa Anda ingin menjalankannya, ada beberapa folder tempat Anda dapat meletakkan file ini (dijelaskan di tautan di atas). Jika hanya untuk Anda sendiri, Anda dapat membuat folder bernama WindowsPowerShell di folder My Documents Anda, dan meletakkannya di sana.
Jika Anda meletakkan fungsi ini di file itu:
function prompt
{
"PS " + $(get-location) + "> "
}
Ini akan membuat prompt Anda terlihat seperti ini:
PS C:\directory\path\here>
Ada banyak hal lain yang dapat Anda masukkan ke dalamnya, tetapi itulah dasar-dasarnya.
CATATAN: sebelum Anda dapat menggunakan skrip profil, Anda harus menjalankan "set-executpolicy remotesigned" dari PowerShell - ini memungkinkan Anda untuk menjalankan skrip yang tidak ditandatangani yang ditulis secara lokal di komputer dan skrip yang ditandatangani dari yang lain.
$profile.CurrentUserCurrentHost
dan $profile.CurrentUserCurrentHost
untuk melihat skrip profil (pengguna) apa yang valid. Host yang berbeda (mis. VS vs. ISE) memiliki nilai yang berbeda untuk$profile.CurrentUserCurrentHost
Coba yang berikut ini:
$CurrentDir = $(get-location).Path;
Saat ini, ini berfungsi dengan baik:
echo "$PWD"
yang bekerja berbeda dari
echo $PWD
Hanya saja jangan lupa tanda kutip :) Contoh output di bawah ini.
PS C:\Users\user name> echo $PWD
Path
----
C:\Users\user name
PS C:\Users\user name> echo "$PWD"
C:\Users\user name
PS C:\Users\user name>
(Get-Item -Path ".\").FullName