Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PowerShell 使っている?@Niigata.LL
Search
kasacchiful
PRO
March 23, 2013
930
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PowerShell 使っている?@Niigata.LL
Niigata.LL で PowerShell についてしゃべりました。
kasacchiful
PRO
March 23, 2013
More Decks by kasacchiful
See All by kasacchiful
Step Functions Express ワークフローの使い所 / 20260725jawsug-niigata-sado
kasacchiful
PRO
1
64
Step FunctionsでAIエージェント × 人の承認を試す / 20260705jawsug-hokurikushinkansen-agentcore-hitl-workflow
kasacchiful
PRO
0
84
上越のサメ食文化を訪ねて - 新潟市民の初体験レポ / ssmjp-shark
kasacchiful
PRO
1
82
Rust on AWS でデータ分析 / 20260523iotlt-niigata-rust-on-aws
kasacchiful
PRO
0
42
Step Functionsで始めるサーバーレス入門 〜 つないで動かすAWSサーバーレス
kasacchiful
PRO
0
70
Amazon Q Developer CLI (現Kiro CLI) で作った 新潟ランチマップWebアプリのこれまでとこれから / 20260207jawsug-tochigi
kasacchiful
PRO
0
130
Amazon SageMaker Catalogの、AIエージェントによる自動データ分類機能を試してみようとしたが、できなかったので、代わりに最近構築したデータ連携基盤を紹介します / 20260117jawsug-fukui
kasacchiful
PRO
0
140
データファイルをAWSのDWHサービスに格納する / 20251115jawsug-tochigi
kasacchiful
PRO
2
290
テーブル定義書の構造化抽出して、生成AIでDWH分析を試してみた / devio2025tokyo
kasacchiful
PRO
0
1k
Featured
See All Featured
The AI Revolution Will Not Be Monopolized: How open-source beats economies of scale, even for LLMs
inesmontani
PRO
3
3.7k
The browser strikes back
jonoalderson
0
1.5k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Typedesign – Prime Four
hannesfritz
42
3.1k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Design in an AI World
tapps
1
280
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
380
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
The Language of Interfaces
destraynor
162
27k
The Curious Case for Waylosing
cassininazir
1
450
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.2k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
4.3k
Transcript
PowerShell ͬͯΔʁ ּݪɹ @kasacchiful
ීஈWindowsͬͯ·͔͢ʁ ࣄͰWindowsͬͯ·͔͢ʁ PowerShell ͬͨ͜ͱ͋Γ·͔͢ʁ
Windows͍ͬͯΔͳΒ PowerShellΛΘͳ͍ͱ ͍ͬͨͳ͍ʂ
࣍ ࣗݾհ PowerShellͬͯԿʁ ར ࣄྫ
ࣗݾհ ּݪɹʢ@kasacchifulʣ ৽ׁࢢࡏॅ SIerۈʢΠϯϑϥඋ͕ଟΊʣ JaSST৽ׁɹ࣮ߦҕһ ීஈMacɺࣄWindows Ruby͕͓ؾʹೖΓ ݱࡏɺපؾྍཆத…
PowerShellͬͯԿʁ
PowerShellͬͯԿʁ ੨͍ը໘ͷΠΧͭ͢ Windows7Ͱ2.0ɺ8Ͱ3.0͕ඪ४උ MSͱੑ͕ߴ͍ جຊShell͕ͩɺVBScriptͷସʹ͑Δ →ϓϩάϥϛϯάͰ͖Δͬͯ͜ͱʂ ࠓճPowerShell 2.0Λجʹ͓͠·͢
རʢݸਓతͳʣ
ར lsͬͯೖྗͰ͖Δ ͪΌΜͱදࣔ͞ΕΔ
ͦΕ͚ͩͰͳ͍
ར ΤΠϦΞε͕ొͰ͖Δ lsGet-ChildItemͷΤΠϦΞε dirGet-ChildItemͷΤΠϦΞε railsίϚϯυΛrͰొͰ͖ͳ͍
ͦΕ͚ͩͰͳ͍
ར CSVϑΝΠϧͷಡऔʗॻࠐ͕؆୯ Export-CsvɺImport-Csv σʔλ࿈ܞ͕CSVͳͷ͕ɺ͍͔ʹ SIerͬΆ͍͔ͳ
ͦΕ͚ͩͰͳ͍
ར ActiveDirectoryɺSQL Serverͷૢ࡞͕ߦ͑Δ Windows Server 2008 R2͔Β ActiveDirectoryૢ࡞ADSIΑΓ؆୯
ͦΕ͚ͩͰͳ͍
ར εΫϦϓτϑΝΠϧʹอଘɺ࣮ߦͰ͖Δ ֦ுࢠʮ.ps1ʯ όονϑΝΠϧVBScriptॻ͘͘Β͍ͳΒ PowerShellͷํ͕ศར
ͦΕ͚ͩͰͳ͍
ར .NET FrameworkͷΫϥεϥΠϒϥϦ͕ ͑Δ Windows FormWPF͑ͯ͠·͏ => ԿͰͰ͖ͦ͏͡ΌΜʂ
ͦΕ͚ͩͰͳ͍
ར ύΠϓ͕͑Δ UnixʗLinuxͰͨΓલ PowerShellͰɺ.NET FrameworkͷΦϒδΣΫτ͕͞ΕΔ
ύΠϓͷྫ ࠷ऴߋ৽͕ݱࡏͷ0:00:00ΑΓ30Ҏ্ܦաͨ͠ ʮ.logʯϑΝΠϧΛআ͢Δ ls “C:¥log” | where {($_.Name -match “.log$”)
-and ($_.LastWriteTime -lt (Get-Date -Hour 0 -Minute 0 -Second 0).AddDays(-30))} | rm
ͦΕ͚ͩͰͳ͍
ར ΦϒδΣΫτࢦϓϩάϥϛϯά ϓϩτλΠϓϕʔε ΧελϜΦϒδΣΫτΛ࡞ͯ͠ϓϩύςΟͱ ϝιουΛՃ͢Δํ๏ͰՄೳ
ΦϒδΣΫτࢦϓϩάϥϛϯάͷྫ $i = 1; $i.PSObject.Members.Add( (New-Object System.Management.Automation.PSScriptMethod “Hello”, {param($msg); “Hello,
$msg $this.”}) ); $i.Hello(“My name is”) => Hello, My name is 1.
ͦΕ͚ͩͰͳ͍
͚ͩͲ͍ͷͰলུ ʮPowerShell ISEʯͱ͍͏։ൃڥ͕͑Δ σόοάػೳ͕ඪ४උ Windows 7ΫϥΠΞϯτ͔ΒϦϞʔτͷWindows 2008 R2αʔόϦϞʔ τཧػೳ ύΠϓͱ࿈ܞ֤ͯ͠छϑΟϧλػೳ͕ڧྗ
୯ମςετπʔϧ͑ΔʢPSUnitͳͲʣ ྫ֎ॲཧʮtryʯʮcatchʯʮfinallyʯ etc.
ͳΜ͔ͩLLͬΆ͍Ͱ͢ΑͶ
ࣄྫ
ࣄྫ ৬һཧ༻ActiveDirectoryͷҟಈॲཧ ҟಈ͢Δͱॴଐ͢Δ෦ॺʹରԠ͢ΔOUͱηΩϡϦςΟάϧʔϓΛCSV࿈ܞ ͱPowerShellͰ͝Γ͝Γมߋ Ϣʔβͷ৽نొɺมߋɺআΔ
ࣄྫ ਓࣄڅ༩γεςϜ ౷߹ೝূγεςϜ ใܥAD جװܥAD ͦͷଞαϒγεςϜ ͜ͷ࿈ܞ෦
ͬͨ͜ͱ ౷߹ೝূγεςϜ͔ΒCSVϑΝΠϧΛड͚औΔ ใܥActiveDirectoryαʔόͰɺͦΕΛPowerShellͰ͝Γ͝Γ ใܥADΛมߋ
εΫϦϓτͰͬͨ͜ͱ 1.ϑΝΠϧબμΠΞϩάදࣔ • Windows Form ͔Β FileDialogݺग़ 2.CSVऔࠐ 3.ActiveDirectoryૢ࡞ 4.ϩάग़ྗ
• Τϥʔ͕ग़ͨΒɺPowerShellͷਖ਼نදݱͰ֬ೝ
Windows͍ͬͯΔͳΒ PowerShellΛΘͳ͍ͱ ͍ͬͨͳ͍ʂ