ac 파일을 다른 디렉토리에 복사하고 컴파일하는 명령이 있습니까?

ac 파일을 다른 디렉토리에 복사하고 컴파일하는 명령이 있습니까?

ac 파일을 다른 디렉토리에 복사하고 컴파일하는 명령이 있습니까? 따라서 내 홈 디렉터리에 Ticker.c가 있으면 이를 복사하여 Task라는 다른 디렉터리에 컴파일하고 싶습니다.

답변1

언제든지 원하는 작업을 수행하는 스크립트를 만들 수 있습니다. 나한테는 행운이 좀 있었어

#!/bin/bash

# creates a command 'ccto' that copies and compiles 
# a file to a directory. In the following, we have
# <file> : the file to be copied and compiled
# <dest> : the destination of the copied file
# <filename> : the name of the compiled file in <dest>

if [ ! -f "$1" ] || [ ! -d "$2" ] || [ -z "$3" ]
then
    echo "Usage: ccto <file> <dest> <filename>"
    exit 1
fi

gcc "$1" -o "$2/$3"

파일 이름을 지정합니다 ccto(아편과엮다도착하다) 권한을 실행 파일로 변경합니다. 마지막 단계로 이 파일을 변수의 디렉터리에 추가 $PATH하거나 에 추가하고 파일을 ~/.bin편집하여 이 디렉터리가 있는지 확인 하면 현재 작업 디렉터리에 관계없이 이 스크립트를 실행할 수 있습니다. 원본 파일의 경로를 기억하기 위해)..bashrc$PATH

제가 작성한 스크립트는 전달된 파일이 컴파일 가능한 파일인지 확인하지 않기 때문에 완벽하지 않습니다. 하지만 그렇게 될 것입니다.

답변2

현재 디렉터리에서 파일을 컴파일한 다음 install대상 디렉터리에 복사할 수 있습니다.

install권한, 소유자 및 그룹 설정, 파일이 대상 디렉터리에 이미 있는 경우 백업 파일 생성 등과 같은 다양한 옵션이 있습니다. 모든 작업을 한 번에 수행합니다.

예를 들어 다음 명령을 실행합니다.

install -b -o alice -m 0700 Ticker.o /target/directory/MyTicker

할 것이다:

  • 파일을 Ticker.o에 복사하세요 /target/directory/MyTicker.
  • -비: 이미 존재 MyTicker.old하는 경우 백업 파일을 생성하고 ,MyTicker
  • -o 앨리스: 소유자를 로 변경 alice하고
  • -m0700: 권한을 으로 변경합니다 0700.

관련 정보