佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 如何使用 Shell 腳本執(zhí)行 .NET Core 應用

如何使用 Shell 腳本執(zhí)行 .NET Core 應用

熱門標簽:呼叫中心市場需求 Linux服務器 鐵路電話系統(tǒng) 地方門戶網(wǎng)站 AI電銷 服務外包 百度競價排名 網(wǎng)站排名優(yōu)化

在本文中,我將研究如何創(chuàng)建 shell 腳本來運行簡單的 .NET Core 應用程序。之所以有這個研究議題,是因為本站(pzy.io)數(shù)據(jù)庫需要每天定時備份,并在備份完成后,將備份文件上傳遠程云存儲,保證了數(shù)據(jù)安全。由于數(shù)據(jù)庫備份是 shell 腳本執(zhí)行,而備份文件上傳功能基于 .NET Core 開發(fā),在備份完成后,shell 腳本需要調(diào)用 .NET Core 應用程序。

具體操作執(zhí)行步驟很簡單。

1、創(chuàng)建一個基本的 .NET Core 控制臺應用程序,這個我已經(jīng)建好了,如下示例:

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.GetServiceIStorageProvider>(); 
    var backup = new MysqlBackQiniu(storageProvider); 
    var backupPath = configuration.GetValuestring>("BackupPath"); 
    await backup.ExecuteAsync(backupPath); 
  } 
}

2、嘗試編譯項目以查看應用是否創(chuàng)建成功。

3、基于運行的操作系統(tǒng)平臺版本發(fā)布。由于我是基于 Ubuntu 18.04 運行,故執(zhí)行以下命令行進行發(fā)布:

dotnet publish -c release -r ubuntu.18.04-x64 --self-contained

4、在 Linux 上創(chuàng)建目錄(假設為: /home/dotnet/test )。將第 3 點發(fā)布生成的文件(在 release 對應平臺的 publish 下)上傳到 /home/dotnet/test 目錄,如果上傳失敗,則設置一下目錄權限為 777。上傳完成后,將該平臺的可執(zhí)行文件(本站為 Pzy.DbBackup)權限設置為777。

5、創(chuàng)建 shell 腳本文件(假設為 dbbackup.sh )。創(chuàng)建后,必須通過更改權限使其成為可執(zhí)行文件,在該文件中寫入以下內(nèi)容:

#!/bin/sh 
cd /home/dotnet/test 
./Pzy.DbBackup

這里有一點要注意,一定要到 .NET Core 應用當前目錄下執(zhí)行 .NET Core 應用,即先通過 cd /home/dotnet/test 定位到當前目錄,再執(zhí)行應用 ./Pzy.DbBackup ,而不是直接通過 /home/dotnet/test/Pzy.DbBackup 來執(zhí)行應用,因為這要將引起讀取不到配置文件等問題。

以上就是如何使用 Shell 腳本執(zhí)行 .NET Core 應用的詳細內(nèi)容,更多關于Shell 腳本執(zhí)行應用的資料請關注腳本之家其它相關文章!

您可能感興趣的文章:
  • 使用PowerShell .Net獲取電腦中的UUID
  • PowerShell中使用.NET將程序集加入全局程序集緩存
  • Powershell中可以使用的.Net實用靜態(tài)方法
  • PowerShell入門教程之訪問.Net程序集、COM和WMI實例
  • Powershell小技巧之查看安裝的.Net framework版本信息
  • PowerShell中調(diào)用.NET對象的靜態(tài)方法、靜態(tài)屬性和類方法、類屬性例子
  • PowerShell中查看當前版本、Windows版本、.NET版本信息的代碼
  • 一個ASP.Net下的WebShell實例
  • PowerShell 定時執(zhí)行.Net(C#)程序的方法
  • ASP.NET下使用WScript.Shell執(zhí)行命令

標簽:崇左 銅川 黃山 湖南 仙桃 湘潭 蘭州 衡水

巨人網(wǎng)絡通訊聲明:本文標題《如何使用 Shell 腳本執(zhí)行 .NET Core 應用》,本文關鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。
  • 相關文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    寿光市| 巴塘县| 新泰市| 资阳市| 衡南县| 武宣县| 崇州市| 开封县| 江都市| 任丘市| 威远县| 乌兰浩特市| 蒙自县| 启东市| 凤山县| 砚山县| 沿河| 德安县| 凤凰县| 长顺县| 安康市| 白水县| 边坝县| 兴文县| 海丰县| 张掖市| 古丈县| 正安县| 信阳市| 漳州市| 平顺县| 尼木县| 竹溪县| 荃湾区| 桓台县| 临潭县| 广水市| 渭源县| 内丘县| 金华市| 仁化县|