programing

여러 줄의 명령을 작성하는 방법은 무엇입니까?

newsource 2023. 4. 25. 22:26

여러 줄의 명령을 작성하는 방법은 무엇입니까?

명령을 다음 행으로 확장하려면 어떻게 해야 합니까?

기본적으로 Linux를 위한 Windows 대안은 무엇입니까?

ls -l \
/usr/

여기서는 백슬래시를 사용하여 명령을 다음 행으로 확장합니다.

Windows에 해당하는 것은 무엇입니까?

키보드의 거의 모든 키를 사용해 본 후 다음을 수행합니다.

C:\Users\Tim>cd ^
Mehr? Desktop

C:\Users\Tim\Desktop>

그래서 ^ 키인 것 같습니다.

Windows 명령 프롬프트에서 다음을 수행합니다.^명령줄의 다음 문자를 이스케이프하는 데 사용됩니다.(좋아요.\문자열에 사용됩니다.)명령줄에서 그대로 사용해야 하는 문자는 앞에 ^가 붙어야 하므로 줄바꿈에서 사용할 수 있습니다.

참고로 이스케이프가 필요한 문자는 다음과 같습니다(따옴표로 묶이지 않고 명령 인수로 지정된 경우).&|()

따라서 Linux의 예시와 동일한 내용은 다음과 같습니다(More?는 프롬프트가 됩니다).

C:\> dir ^
More? C:\Windows

솔루션 1 CMD에서 사용합니다.^,예

docker run -dp 3000:3000 ^
  -w /app -v "$(pwd):/app" ^
  --network todo-app ^
  -e MYSQL_HOST=mysql ^
  -e MYSQL_USER=root ^
  -e MYSQL_PASSWORD=secret ^
  -e MYSQL_DB=todos ^
  node:12-alpine ^
  cmd "npm install && yarn run start"

솔루션 2 PowerShell에서 (backtick) , 예를 사용합니다.

docker run -dp 3000:3000 `
  -w /app -v "$(pwd):/app" `
  --network todo-app `
  -e MYSQL_HOST=mysql `
  -e MYSQL_USER=root `
  -e MYSQL_PASSWORD=secret `
  -e MYSQL_DB=todos `
  node:12-alpine ^
  cmd "npm install && npm run start"

캐럿 문자는 작동하지만 다음 줄은 큰따옴표로 시작하면 안 됩니다. 예를 들어 다음과 같습니다.

C:\ ^
"SampleText" ..

큰따옴표 없이 다음 줄을 시작합니다(예제는 유효하지 않습니다. 설명을 위해).

이 질문에 대한 답을 찾았지만 운영의 의미와 완전히 다른 방법, 즉 여러 줄의 CMD가 한 줄로 작동하도록 하는 방법이라면 위험한 답변을 해드릴 수 있습니다.

이걸 실제로 파이프를 사용하는 물건에 사용하려고 해요, 예를 들면요?findstr꽤 문제가 있습니다.이 문제를 다룰 때도 마찬가지입니다.elses. 그러나 여러 줄 조건부 명령을 배치 파일이 아닌 CMD에서 직접 실행하려면 이 방법이 적합합니다.

명령 프롬프트에서 직접 실행할 배치에 다음과 같은 것이 있다고 가정해 보겠습니다.

@echo off
for /r %%T IN (*.*) DO (
    if /i "%%~xT"==".sln" (
        echo "%%~T" is a normal SLN file, and not a .SLN.METAPROJ or .SLN.PROJ file
        echo Dumping SLN file contents
        type "%%~T"
    )
)

이제 연속 캐럿을 사용할 수 있습니다.^이렇게 수동으로 입력하지만, 경고는 지루하고, 잘못 입력하면 다시 입력하는 즐거움을 배울 수 있습니다.

음, 이건 그냥 가지고는 안 될 거예요.^괄호 안쪽에 있는 탈출 메커니즘 덕분에 적어도 쓰여진 그대로는 아니었겠죠이렇게 캐럿을 두 배로 늘려야 합니다.

@echo off ^
More? for /r %T IN (*.sln) DO (^^
More? if /i "%~xT"==".sln" (^^
More? echo "%~T" is a normal SLN file, and not a .SLN.METAPROJ or .SLN.PROJ file^^
More? echo Dumping SLN file contents^^
More? type "%~T"))

대신 캐럿이 필요 없는 트랙의 반대편에서 단 한 개의 파이프로 교환함으로써 지저분한 음흉한 스크리퍼가 될 수 있습니다.|루프/행렬의 연속:)을 사용하여어느끼다/느끼다.

@echo off
for /r %T IN (*.sln) DO if /i "%~xT"==".sln" echo "%~T" is a normal SLN file, and not a .SLN.METAPROJ or .SLN.PROJ file | echo Dumping SLN file contents | type "%~T"

10 22H2에서는 Windows 10 22H2를 누르기만 하면 됩니다.enter열린 괄호 뒤에 있는 것은 입력과 같은 결과가 나옵니다.^이렇게요.예를 들어, 다음 코드 줄을 입력한 후 다음과 같이 입력합니다.

>for %f in (*) do (

누르다enter그러면 다음과 같은 새 줄이 자동으로 나타납니다.

More? 

언급URL : https://stackoverflow.com/questions/605686/how-to-write-a-multiline-command 입니다.