この記事は機械翻訳のミラー記事です。元の記事にジャンプするにはこちらをクリックしてください。

眺める: 1073|答える: 0

[ヒント] .NET 10はLinux上でShebang方式でスクリプトを実行します

[リンクをコピー]
2025年6月17日 09:15:21に投稿 | | | |
要件:昨日、ブログガーデンでTeam Zhangが公開した記事を読み、直接実行可能なプロジェクトC#のシングルファイルを作成する必要はありません。 Linuxでいくつかの作業を行う際にはシェルスクリプトを書く必要があるかもしれません。シェル言語を理解していない人にとっては、書くことが不可能で学習コストもかかります。C#言語を知っていれば、Shebangフォーマットでスクリプトを書き、Linuxサーバー上で実行できます。

Linux Shebang

シェバン(hashbangまたはpound-bangとも呼ばれる)は、Unix系オペレーティングシステムにおけるスクリプトファイルの冒頭行に表示される、ハッシュ(#)と感嘆符(!)からなる文字列(#!)です。 Shebangはスクリプトを実行するインタプリタを指定するために使われます。 スクリプトファイルが実行されると、オペレーティングシステムはそのファイルの最初の行を探し、見つけたら指定されたインタプリタを使ってスクリプトを実行します。

以下に典型的なシェバン通訳の指示を挙げます:

dotnet run app.csとは何ですか?

.NET 10 Preview 4の新機能で、C#の使い始めをこれまでになく簡単にします。 今ではdotnet run app.csを使ってC#ファイルを直接実行できます。 つまり、プロジェクトファイルを作成したり、アプリケーション全体のフレームワークを構築したりして、クイックスクリプトを実行したり、コードの断片をテストしたり、アイデアを試したりする必要がなくなります。 シンプルで直感的、特に初心者の開発者にとってC#開発体験を簡素化するために設計されています。 以前は、このギャップはサードパーティの開発者(例:cs-script、dotnet-scriptなど)によって埋められていました。

これまで、dotnetCLIでC#コードを実行するには.csprojファイルを含むプロジェクト構造が必要でした。 この新機能(私たちはこれをファイルベースのアプリと呼んでいます)を使えば、PythonやJavaScriptのようなスクリプト言語のように、スタンドアロンのファイルを直接.cs実行できます。

所見:ファイルベースのアプリは依然として.NET SDKが必要ですなぜなら、それらは依然として通常のMSBuildベースのシステムを使って構築されているからです。 「dotnet run app.cs」を使ってファイルベースのアプリケーションを実行したい場合は、.NET SDK は必須です

LinuxでC#スクリプトを書く

この記事はRocky Linux 9システムを用いてテストし、まず次のコマンドで.NET 10 SDK preview.5をダウンロードします。

以下に示すように:



単純なコード

以下のコードでhello.csスクリプトを書きます:

実行権限を付与し、コマンドを実行します:

出力は以下の通りです:



nugetパッケージコードに依存します

多くの場合、ロジックはより複雑で、サードパーティ製のnugetパッケージを導入し、その中の関数を呼び出してニーズを満たす必要があります。#:p ackageコマンドを使ってnugetパッケージを導入できます。Newtonsoft.Json例えば、コードは以下の通りです:

出力は以下の通りです:



参考:

ハイパーリンクのログインが見えます。
ハイパーリンクのログインが見えます。




先の:.NET/C#はClosedXMLを使ってExcelをDataTableに読み込みます
次に:[翻訳] なぜNET/C#のMySqlConnectorとMySql.Dataが前者を勝ち取るのか
免責事項:
Code Farmer Networkが発行するすべてのソフトウェア、プログラミング資料、記事は学習および研究目的のみを目的としています。 上記の内容は商業的または違法な目的で使用されてはならず、そうでなければ利用者はすべての結果を負うことになります。 このサイトの情報はインターネットからのものであり、著作権紛争はこのサイトとは関係ありません。 ダウンロード後24時間以内に上記の内容を完全にパソコンから削除してください。 もしこのプログラムを気に入ったら、正規のソフトウェアを支持し、登録を購入し、より良い本物のサービスを受けてください。 もし侵害があれば、メールでご連絡ください。

Mail To:help@itsvse.com