2014-10-14 1 views
1

죄송합니다. 제 질문에 이상하게 여겨 질 수 있습니다. 내가하고 싶은 것은 Read-Host 프롬프트 뒤에 달러 기호가 있어야한다는 것입니다. 그래서 현재 가지고있는이다 :이 명령이 실행되면

$BookPrice = Read-Host "Please enter book price" 

, 그것은 다음과 같습니다

Please enter book price: 

나는 같이하는 명령이 원하는 무엇 : 그래서

Please enter book price: $ 

사용자는 "$"부터 가격을 입력 할 수 있습니다. 나는 여러 가지를 시도했지만 콜론 앞에 달러 기호가 항상 표시됩니다.

이것이 가능합니까?

+0

이 질문은 스택 교환 네트워크에있는 다른 사이트에 속하는 것으로 보인다. 아마도 [Super User] (http://superuser.com/)를 시도해야합니다. – jww

+1

@jww 이것이 수퍼 유저가 된 이유는 무엇입니까? OP는 프로그램 호스트가 기본값을 설정하도록 프로그래밍 방식을 찾고 있습니다 – Matt

답변

2

당신은이 명령으로, 이런 식으로 할 수있는 :

Write-Host 'Please enter book price: $' -NoNewline 
$BookPrice = Read-Host 
+0

OP가 수익의 일부로 $를 원했던 지 궁금합니다 .... 어느 쪽이든 시도해 본 적이 없습니다. 좋은 전화 – Matt

+0

흠, 내 해석에 따르면 반환 값의 일부로'$'를 사용하지 않으려 고했지만 응답에서와 같이'Read-Host' 전에 연결을 사용하기에 충분합니다. 감사! – briantist

+0

예! 이것은 완벽하게 작동했습니다. 브라이언 티스트 감사합니다! 그리고 가장 큰 걱정은 Read-Host 텍스트 내에 콜론 뒤에 "$"가 표시되는 것이 었습니다. – TheRedMaverick

0

일부 텍스트로 사용자를 시작한 것 같습니다. Idon't는 그것이 실제로 Read-Host와 함께 실제로 가능하다라고 생각한다. 누군가 나를 쉽게 틀리게 증명할 수있었습니다. 반환 값의 접두사가이 경우 작동합니까? 사용자가 실제로 그렇게 달러 (A $)를 넣어 중복을 생성하지 않는 경우 조금 If 던질 수

PS C:\Users\Name> $BookPrice = '$' + (Read-Host 'Please enter book price') 
Please enter book price: 345 
PS C:\Users\Name> $BookPrice 
$345 

잡을 수 있습니다. 콘솔에서 빠져 나가려면 기꺼이 입력 상자를 사용하십시오.

[System.Reflection.Assembly]::LoadWithPartialName('Microsoft.VisualBasic') | Out-Null 
$BookPrice = [Microsoft.VisualBasic.Interaction]::InputBox("Please enter book price", "Book Price", '$') 
+0

응답 해 주셔서 감사합니다. 그러나 두 가지 방법을 모두 시도했으며 실행시 콜론 앞에 달러 기호가 포함되어 있습니다 – TheRedMaverick

+0

오 질문을 잘못 읽었습니다. 나는 네가 그렇게 할 수 있다고 생각하지 않는다. 나는 대답을 바보로 해결해 주었다. – Matt

+0

문제가 아니며 귀하의 의견을 보내 주셔서 감사합니다. 불행히도 콘솔에서 솔루션을 찾아야했지만 매우 흥미 롭습니다. 모든 도움에 다시 한 번 감사드립니다! – TheRedMaverick