어떻게 Shell 스 크 립 트 를 사용 하여.NET Core 응용 을 실행 합 니까?

본 논문 에서 나 는 간단 한.NET Core 응용 프로그램 을 실행 하기 위해 셸 스 크 립 트 를 만 드 는 방법 을 연구 할 것 이다.이 연구 의제 가 있 는 이 유 는 본 사이트(pzy.io)데이터 베 이 스 를 매일 정기 적 으로 백업 하고 백업 이 완 료 된 후에 백업 파일 을 원 격 클 라 우 드 에 업로드 하여 데이터 안전 을 확보 해 야 하기 때 문 입 니 다.데이터베이스 백업 은 셸 스 크 립 트 로 실행 되 기 때문에 백업 파일 업로드 기능 은.NET Core 개발 을 바탕 으로 백업 이 완료 되면 셸 스 크 립 트 는.NET Core 응용 프로그램 을 호출 해 야 합 니 다.
구체 적 인 조작 집행 절 차 는 매우 간단 하 다.
1.기본 적 인.NET Core 콘 솔 프로그램 을 만 듭 니 다.이것 은 제 가 이미 만 들 었 습 니 다.다음 과 같은 예제 입 니 다.

class Program 
{ 
  /// <summary> 
  /// 
  /// </summary> 
  /// <param name="args"></param> 
  /// <returns></returns> 
  static async Task Main(string[] args) 
  { 
    var builder = new ConfigurationBuilder(); 
    builder.AddJsonFile("appsettings.json", false, false); 
    var configuration = builder.Build(); 
    var serviceProvider = new ServiceCollection() 
      .AddQiniuStorageX(configuration) 
      .BuildServiceProvider(); 
    var storageProvider = serviceProvider.GetService<IStorageProvider>(); 
    var backup = new MysqlBackQiniu(storageProvider); 
    var backupPath = configuration.GetValue<string>("BackupPath"); 
    await backup.ExecuteAsync(backupPath); 
  } 
}
2.프로그램 이 성공 적 으로 만 들 어 졌 는 지 확인 하기 위해 항목 을 컴 파일 하려 고 시도 합 니 다.
3.운영 체제 플랫폼 버 전 을 기반 으로 발표 합 니 다.저 는 Ubuntu 18.04 를 기반 으로 실행 되 기 때문에 다음 명령 행 을 실행 하여 발표 합 니 다.

dotnet publish -c release -r ubuntu.18.04-x64 --self-contained
4.Linux 에 디 렉 터 리 를 만 듭 니 다(가설:/home/dotnet/test ).3 시 에 생 성 된 파일(release 대응 플랫폼 의 Publish 에서)을 /home/dotnet/test 디 렉 터 리 에 업로드 하고 업로드 에 실패 하면 디 렉 터 리 권한 을 777 로 설정 합 니 다.업로드 가 완료 되면 이 플랫폼 의 실행 가능 한 파일(본 사 이 트 는 Pzy.DbBackup)권한 을 777 로 설정 합 니 다.
5.셸 스 크 립 트 파일 을 만 듭 니 다(dbbackup.sh 으로 가정).생 성 후 실행 가능 한 파일 로 권한 을 변경 하여 다음 내용 을 기록 해 야 합 니 다.

#!/bin/sh 
cd /home/dotnet/test 
./Pzy.DbBackup
여기 서 주의해 야 할 것 은.NET Core 응용 현재 디 렉 터 리 에서.NET Core 응용 을 실행 해 야 한 다 는 것 이다.즉,cd /home/dotnet/test 을 통 해 현재 디 렉 터 리 로 위치 한 다음 에 ./Pzy.DbBackup 을 실행 해 야 한다./home/dotnet/test/Pzy.DbBackup 을 통 해 응용 을 직접 실행 하 는 것 이 아니 라 설치 파일 을 읽 지 못 하 는 등 문 제 를 일 으 킬 수 있 기 때문이다.
이상 은 Shell 스 크 립 트 를 사용 하여.NET Core 응용 을 수행 하 는 방법 에 대한 상세 한 내용 입 니 다.Shell 스 크 립 트 실행 응용 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!

좋은 웹페이지 즐겨찾기