동시에 두 개 이상의 명령을 실행하려면 어떻게 해야 합니까? (OS = 썬 솔라리스)

동시에 두 개 이상의 명령을 실행하려면 어떻게 해야 합니까? (OS = 썬 솔라리스)

동시에 두 개 이상의 명령을 실행하려면 어떻게 해야 합니까? (OS = 썬 솔라리스)

답변1

앞서 다른 질문에서 제안한 것처럼 쉘을 기꺼이 배우시게 되어 기쁩니다. :-)

백그라운드에 명령을 넣고 그곳에서 실행되게 하려면:

yourcommand &

해당 프로세스로 다시 전환하려면(백그라운드 프로세스가 하나만 시작된 경우):

fg

모든 백그라운드 프로세스를 나열하려면 다음을 수행하십시오.

jobs -l

단지 명령을 실행하고 싶다면, 또 다른 명령을 실행하고, 또 다른 명령을 실행하세요....

yourcommand && yourothercommand && youryetanothercommand

위의 예에서는 이전 명령이 오류 없이 성공한 경우에만 다음 명령으로 진행합니다. 이전 명령이 성공했는지 여부가 마음에 들지 않으면 다음을 수행할 수 있습니다.

yourcommand; yourothercommand; youryetanothercommand

또한 명령은 screen새로운 가장 친한 친구가 될 것입니다. 이를 통해 나중에 분리했다가 다시 연결할 수 있는 자체 "화면"에서 프로세스를 시작할 수 있으므로 예를 들어 회사 데스크톱 컴퓨터에서 서버에 연결하고 화면을 시작하고 장기 실행 명령을 실행할 수 있습니다. 그곳에서 세션을 분리하고 회사 노트북으로 가서 해당 서버에 연결한 다음 세션을 다시 연결하고 그동안 무슨 일이 일어났는지 확인하세요.

어쨌든, 이 모든 것은 내가 여러분에게 설명해서는 안 되는 종류의 기본 사항입니다. 시작하려면 튜토리얼을 읽어보세요! Google만 이용하세요배쉬 튜토리얼, 쉘이 bash인 경우. 당신은 Solaris를 사용하고 있는 것 같습니다. 따라서 쉘도csh, 그렇다면 Google에서csh 튜토리얼. 그것들은 서로 유사하지만 예를 들어 환경 변수에 일부 차이점이 적용됩니다.

답변2

한 번에 두 개의 명령을 실행하려는 것이 아니라 첫 번째 출력에 대해 두 번째 명령을 실행하려고 합니다. SvenW는 이미 find를 위한 -exec 인수를 언급했지만 또 다른 방법은 xargs를 사용하는 것입니다. 이를 통해 파이프된 명령의 출력을 다른 명령의 인수로 사용할 수 있습니다.

foo라는 이름의 모든 디렉토리를 찾고 해당 디렉토리 내의 모든 파일에 대한 권한을 확인하고 싶다고 가정해 보겠습니다.

찾기 / -type d -name 'foo' -print0 | xargs -0 ls -la

(필요한 경우 -print0 및 -0을 사용하려면 find 및 xargs에 대한 매뉴얼 페이지를 참조하십시오.)

답변3

이를 수행할 수 있는 방법이 너무 많기 때문에 무엇을 하고 싶은지 설명해주세요.

  • 다음과 같은 명령을 연결할 수 있습니다.command1; command2
  • & like를 사용하여 백그라운드에서 장기 실행 명령을 넣을 수 있습니다.command &
  • 연결을 끊은 후에도 screen(권장 man screen)을 사용하면 여러 가상 콘솔을 동시에 실행할 수 있습니다.
  • 쉘 스크립트를 작성할 수 있습니다
  • 등등등

Linux/Unix 초보자 가이드를 읽으면 이에 대해 자세히 설명되어 있습니다.

또한, 이것은 기초를 배우기 위한 초보자 포럼이 아닙니다. 귀하가 묻는 질문 유형은 자매 사이트에 더 적합합니다.superuser.com.

관련 정보