我想用C#編寫簡單的腳本。東西我通常會使用.bat或4NT .btm文件。複製文件,解析文本,詢問用戶輸入等等。相當簡單,但在批處理文件中正確使用這些東西確實很難(例如沒有例外)。用C#編寫批處理腳本的好方法是什麼?
我熟悉命令行「腳本」封裝像AxScript,以便讓我成爲那裏的一部分。我所缺少的是簡單的文件操作框架。我希望能夠做到cd(「..」),複製(srcFile,destFile)類型的功能。
工具,我曾嘗試:
NANT,這是我們在構建過程中使用。不是一個好的腳本工具。瘋狂地詳細說明XML語法並添加一個簡單的函數,您必須編寫一個擴展程序集。不能內聯。
PowerShell。看起來不錯,但我一直無法切換到這個作爲我的主要外殼。與4NT差異太大。無論我做什麼需要從普通的命令提示符運行,並且不需要特殊的shell來運行它。 PowerShell可以用作腳本執行器嗎?
Perl/Python/Ruby。真的很討厭學習一種全新的語言和框架來做批處理文件操作。一直沒有能夠奉獻我需要這樣做的時間。另外,我們是一個99%的.NET工具鏈商店,我真的想要利用我們現有的經驗和代碼庫。
是否有框架試圖解決「使用C#編寫批處理文件」這個問題?
我希望C#/ .NET具有典型cmd.exe shell語言的即時模式類型功能。我是否只想要這樣的事情?
你一定可以在PowerShell中執行腳本,它可以爲你提供所有你需要的.NET Framework API。不幸的是,它確實有一個不平凡的學習曲線。 – Bruce 2009-05-30 18:31:44