1. Trang chủ
  2. » Công Nghệ Thông Tin

Windows powershell 2 for dummies(tieng viet)

370 401 4

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 370
Dung lượng 3,66 MB

Nội dung

Tôi là ột ngư i thực sự lư i bi ng bẩm sinh Tôi không lư i bi ng trong ý nghĩa à tôi th ch ngồi và không là gì cả ngày, nhưng đúng hơn là tôi ghét là những việc lặ lại nhiề lần. Bất cứ khi nào tôi cảm thấy bản thân ình là điề gì đó rất nhà ch n, điều đầ tiên xuất hiện trong tâ tr phải có một c ch đ tự động hóa điều này M y t nh là con ngựa là việc tuyệt v i. Chúng có th chạy ngày này q a ngày kh c và không bao gi hàn nàn. Trong sự lư i bi ng vô hạn của tôi, tôi đang liên tục tạo ra c ch là cho y t nh là việc ch chỉ hơn đ tôi có th có th i gian đ là những việc quan trọng hơn. . . như vi t cuốn ch này cho bạn. Cho dù bạn đang tạo m i hoàn toàn cho kịch bản hay thực hiện một số mức độ cấ thông tin tự động trong q khứ bằng c ch sử dụng ngôn ngữ kịch bản kh c, bạn sẽ thực sự yê th ch Windows PowerShell. Nó c ng cấp cho ngư i dùng indow một vỏ thực sự cung cấp điện cùng ột hệ thống Windows à chỉ ngư i trong cộng đồng Unix Linux th ch trư c đó Micro oft đã bỏ ra nhiề n và cố g ng đ là Windows dễ dàng hơn đ sử dụng, và trong q trình là như vậy đã thực hiện một số điều kh bực bội cho ngư i sử dụng. (Hãy nh rằng khi Microsoft đã cố g ng đ buộc bạn phải sử dụng wizARDS) Windows PowerShell là tậ h l n c c ngư i sử dụng bi t những gì họ muốn và không ốn hải ngồi cả ngày dài bấ vào c c hộp thoại đ hoản thành công việc.

2 C C l 11 Sức mạnh ngôn ngữ kịch 11 Sự thay đổi từ Monad thành PowerShell 12 Một chút Windows PowerShell 1.0 13 Phiên Windows PowerShell ự h t tri n ti theo 14 Cài đặt Windows PowerShell 15 Khởi động Command Shell Windows PowerShell 15 Giao diện đồ họa 17 C indow Power Shell t ch h Shell (ISE) T 19 C nhân hóa c ch nhìn cảm nhận command shell Thê c vào th gi i bạn Lấy k ch cỡ riêng cho cửa sổ bạn Hi n thị tiê đề cửa sổ Thay đổi thông tin PowerShell Tì hi c ch việc Windows PowerShell ISE Tùy chỉnh ISE Thê chức n ng riêng bạn vào en IS Tạo Alias Xóa alia Truy cập alias drive 19 19 20 21 22 24 25 26 27 29 30 Tạo alias cố định 30 Tì 31 C hi u tab mở rộng Mộ B t đầu ó l nh Shell, Mộ â ức mạnh việc v i Windows Power Shell 33 Tạo kịch đầ tiên 34 C c bư c đ tạo kịch đầ tiên 36 Tì hi u phần kịch đầ tiên 37 Tì hi 39 nhanh c c kịch hức tạ Nghiên N t olt kịch Co li t 41 45 C 45 Cmdlets: The Little Commands That Could! Tì i hi C dlet â 45 tra ự tồn c dlet Giú bạn hi 45 45 cmdlets 46 One Shell to Rule Them All 49 Kịch Windows Shell 49 Windows Scripting Host 52 C h Tì C C h bi n ố Chúng kh c nha nhiều hi c c loại liệu 56 57 Giao ti p v i c c loại liệu 59 X c định rõ ràng ki u liệu 61 Đúc c c gi trị 64 Bi n Liên tục i n đọc 67 Tì hi u bi n tự động 69 Là việc v i c c đối tư ng thông q a bi n 72 Mộ 77 ú t ki m mộ Vỡ lòng logic 78 Rẽ nh nh If/ Else 83 Sử dụng câ lệnh Switch 86 Lặ lặp lại hành động v i c c vòng lặp 86 Vòng lặp v i For 87 Sử dụng Foreach đ duyệt qua tập h p 88 Vòng lặp cho While 88 Chạy vòng lặp t lần v i Do While 89 Vòng lặp Do Until 90 Tr nh cạm bẫy vòng lặp 91 (pipeline) Sử dụng Pipeline đ h lý hóa lệnh bạn 90 Thực thi nhiều lệnh nha 92 Thi t lậ đầu 96 C I Là q en v i Windows Management Instrumentation (WMI) 100 Nghiên ki n trúc 102 Tì MI tên dùng MI 104 Bảo mật WMI 106 Những tương t c Windows PowerShell v i WMI Sử dụng cú h SQL hai th c ức ạnh MI đ lấy QL MI 111 Truy vấn trạng th i dịch vụ Tì ki 107 113 c c ghi ự kiện Thay đổi mức chứng thực WMI Thi t lậ ngư i sử dụng I er onation 115 Using the New WMI Cmdlets Making things happen with Invoke-WMIMethod C Xóa đối tư ng dụng Remove-WmiObject 119 Cài đặt thuộc t nh 121 Đ MI dụng Set-WmiInstance light C i nhìn đầ tiên chuỗi 122 Phân biệt e 122 ty n ll tring Tạo chuỗi chữ 123 Đơn giản hóa c ch dụng Here-Strings 123 Thực phẫu thuật chuỗi 125 K t h p chuỗi K th 125 c c ch ỗi v i nonstrings 125 Là T ch ch ỗi 126 C t bỏ phần chuỗi 127 Thực thay th chuỗi 129 việc v i vị tr ch ỗi 129 Thay đổi trư ng chuỗi 130 Using Regular Expression 131 Tạo Regex đơn giản sử dụng c c ký tự chữ 132 Thực tì 134 ki động sử dụng c c ký tự Sử dụng sửa đổi đ x c định tùy chọn lặ lặp lại trình tự 135 C Sử dụng neo đ d y trì vị tr 138 Đ n v i lựa chọn thay th 139 Sử dụng Regex Windows PowerShell 139 T ẽ nhận 100usd Đưa liệu loại số 141 C c ki u liệu trọn vẹn 141 Thi t lậ ch nh x c c ch dụng ki u liệu onintegral 142 Là ố to n 143 Phé cộng 143 Giả gi trị v i trừ 145 Mở rộng thông q a c c nhân Giả Là 146 thông q a chia 146 tròn gi trị 147 Tạo số ngẫ nhiên 148 Chuy n đổi số 149 Tràn Dữ Liệu 149 C N ó Tì ữ li u bằ dụng m ă hi u mảng 151 Tạo dụng mảng 152 Tạo mảng 152 Truy cậ c c hần tử mảng 153 Vòng lặp qua mảng 154 Thay đổi k ch thư c mảng 156 Tạo mảng đa chiều 157 Tì ki Là việc v i bảng Hash 160 Tạo dụng bảng Hash 160 Sửa đổi c c bảng Hash 162 Bản chất bảng Hash 162 Vòng lặ thông q a bảng Hash 163 C hương thức sử dụng kh c cho ảng 158 Đ Having Some Fun with the File System 166 Di chuy n xung quanh hệ thống tập tin 166 Quản l thư 166 ục C c thao t c tập tin hệ thống tập tin 169 Đọc tậ tin v n 169 Writing Files 171 Working with XML 174 Là C Đọc vi t c c tập tin XML 174 Giữ c c đối tư ng tập tin XML 177 việc v i HTML 180 T Là việc v i ngày indow Power hell 185 Thi t lậ ngày th i gian theo định dạng cụ th 185 Tạo ngày theo c ch riêng bạn 188 Thực c c t nh to n ngày Là 188 T nh to n th i gian kh c nha 188 Nhìn vào tương lai 189 Ki m tra th i gian ti t kiệm th i gian ban ngày 191 việc v i 192 gi Chuẩn hóa v i th i gian quốc t 192 Sử dụng l p TimeZone 193 C ụ T i dụng ã hà Tạo hà 195 đầ tiên bạn X c định c c tha 196 ố 197 Gi trị Trả 198 Phạm vi sử dụng Tì hi 201 c c q y t c phạm vi 201 Tên trùng nha C c q y định hà 203 hạm vi toàn cục 205 Tạo cmdlets nâng cao riêng bạn Tì nâng cao 206 X c định c c th ộc t nh 208 X c định c c tha ố 209 X c định c c hương thức 212 Thực thi hà 214 Tì C hi u cấ hà 206 nâng cao hi u chức n ng c c hà N nâng cao C ạ Sử dụng công việc chạy 215 ch hoạt WINRM 216 B t đầ công việc 217 Lấy k t 218 trình đ i job Q 220 Định gi i hạn job Đưa C 222 ột job ngưng hẳn lại 223 Chạy lệnh điều n từ xa 224 Sử dụng Windows PowerShell nơi 225 Lấy thứ bạn cần cho remote commands 225 K t nối PowerShell v i 226 y t nh kh c Gọi lệnh từ xa 227 Tạo k t nối liên tục 228 Chạy công việc chạy từ xa 230 Hi u ch nh 232 ch, trạng, quyền tiên Tạ ữ Thấy đư c tầm quan trọng Internationalizing Scripts 233 Script bạn ỗi ngôn ngữ kh c nha 234 Sử dụng t nh n ng i internationalization 236 Tì hi u v n hóa 237 Putting it all together 238 Chia sẻ kịch v i ngư i kh c 243 C N ữ Tì ỗ nơi lỗi xuất 244 Bảo vệ chống lại đầ vào không Tì ong ốn 244 ột lỗi logic không ch nh x c 245 Lỗi hệ thống 246 Tì hi chương trình bẫy lỗi 246 Là việc v i hệ thống bảo vệ bạn 250 Là việc v i công cụ bẫy lỗi 253 Là 253 việc v i Thi t lậ dừng dừng 256 Câ lệnh gỡ lỗi Lấy danh ch tất c c dừng 258 Vô hiệ hóa k ch hoạt dừng 258 Xóa C 257 dừng 259 N m vụ i u n: Vậ Theo dõi không gian ổ đĩa ộ h th ng 260 Quản lý Dịch vụ Windows 267 Điề n dịch vụ 269 Cấ hình dịch vụ i tra vent Log Tr y vấn ventLog C 272 dụng 273 MI 275 ủ windows registry Gi i thiệu regi try 278 K t nối t i windows registry 280 Duyệt registry sử dụng Powershell 280 Sử dụng Micro oft win3 Regi try ey đ truy cập Registry 283 Đọc key val e 284 Ghi key val e 286 Ghi key val e dụng PSDrive 286 Ghi registry value sử dụng Microsoft.win32.RegistryKey 287 Đổi tên xóa regi try ey val e 288 Đổi tên xóa regi try key val e Sử dụng Micro oft C 289 in3 Regi try ey đ xóa regi try key values 289 N Gi i thiệ dụng PSDrive D Active Directory Primer 291 K t nối t i Active Directory 292 Truy vấn c c đối tư ng th ộc t nh 293 Tạo LDAP filter 295 Dyna ically obtaining a er’ di ting i hedNa e 301 Sửa đổi thuộc t nh đối tư ng 302 Cập nhật thành viên nhó 303 Tì 304 đối tư ng Raw ADSI sử dụng psbase C Những đặc t nh An toàn PowerShell Loại bỏ kẽ hở thư 307 ục 307 Stopping the double-click blues 308 Bảo vệ thông q a xec tionPolicy 308 Tạo chứng chữ ký điện tử 310 Tạo chứng chữ ký riêng 310 10 Việc đòi hỏi chứng từ tổ chức CA 314 Việc duyệt kho chứng 316 ý tên c c kịch bạn 317 Quản lý Tư ng lửa Windows 322 Định nghĩa globally open ports (cổng mở toàn cầu) Danh ch dịch vụ tư ng lửa 325 Cho ứng dụng q a C C ổi ó ch b 327 ũ, ê ch b n m i Chuy n đổi kịch Windows Shell sang Windows PowerShell 330 In àn hình 330 Sử dụng lệnh có điều kiện 331 Sử dụng lệnh For 333 Chuy n đổi kịch WindowsHost Scripting sang Windows PS Cơ o nh 338 338 Là việc v i đối tư ng COM 339 Tì hi u kh c nha CreateObject GetObject 342 Xử lý vào/ra 344 Là 346 việc v i ActiveX Data Object (ADO) Tận dụng ADO N T vào l i th bạn C m 347 ạng Cài đặt q ản trị mạng bạn Là Là 356 q en v i Win32_NetworkAdapterConfiguration 357 Thi t lập lại TCP/IP 360 Thao t c thi t lập TCP/IP 361 Quản lý 364 indow’ Firewall q en v i Windows Firewall COMmander nabling di abling indow Firewall 11 365 367 out – file có th bảo vệ tập tin n n u tậ tin tồn có tình c bị ghi đè lên c ch h ỷ bỏ ch độ ghi ột thông b o trư c bạn ti n hành hoạt động x c nhận Có th hạn ch tối số k tự tối đa dụng vư t q ỗi dòng v n Nhưng lư ý n u bạn sử ố ký tự đoạn v n bạn gi i hạn Số ký tự đư c c t b t không lư vào tập tin I ( VI ụ qu tr windows) bằ dụng Get- WMIObject Đối v i việc bạn không th Manage ent In tr v i native cmdlets, bạn có th sử dụng Windows entation ( MI) ột chuẩn hóa bi u diễn thông tin hệ thống đơn giản chạy Get-WMIObject Có th sử dụng Get- MIObject đ quản lý nhiều thực th world Windows - Bạn có th sử dụng MI có ạn chạy Get- MIObject định l p WMI bạn muốn k t nối - dịch vụ VII MI có th có nhiề trư ng h p (chẳng hạn N ul indow y in) bạn có th chọn lựa thi t bị cần dùng Sử dụng new – tạ ng m i Bạn sử dụng lệnh New-Object đ tạo hai đối tư ng N T COM Đ tạo đối tư ng COM, bạn cần chạy New-Object v i comobject- witch Vì đ tạo th Micro oft xcel đối tư ng COM, bạn chạy $objXL = New-Object –co object “ xcel A lication” Trong Chương nói đ n việc th đ bạn có th sử dụng New- Object đ tạo đối tư ng N T PSObject C c l p PSObject NET hỗ tr tốt cho Windows PowerShell bạn c ch thê VIII Ch n lự ang lại cho bạn linh hoạt đ đ c c th ộc t nh riêng bạn ng v i select - object 357 ứng nhu cầ riêng Bạn sử dụng select – object bạn cần phải chọn lọc c c liệu bạn muốn có đư c từ đối tư ng Bạn có th sử dụng lệnh đ chọn thuộc t nh đối tư ng, từ mảng ch N đầ tiên ố c c hần tử mảng từ đầu k t thúc mảng Select-Object cho bạn : ro erty có th đư c mở rộng) N u - Mở rộng property (n ro erty ột đối tư ng - Chọn số đầ tiên ố N cuối c c đối tư ng mảng - Chọn gi trị đối tư ng dựa vào số mảng - Tuỳ thuộc vào th ộc t nh đầu hay cuối, bỏ qua số N mục đầ tiên hay cuối mảng - Chọn c c y u tố độc mảng IX T i ập v i v i foreach-Object Khi bạn muốn lặp qua vài đối tư ng mảng chạy số đoạn ã Windows PowerShell cho đối tư ng Bạn sử dụng lệnh foreach-Object c dlet tham chi đ n đối tư ng c ch dụng bi n đặc bịêt $ ( đại diện cho đối tư ng truyền) Bạn có th dùng foreach-Object muốn việc v i c c đối tư ng theo đư ng dẫn t i c c đối tư ng VD: N u bạn muốn hi n thị tất c c thư ục C: \ Windows Get-ChildItem C:\Windows | Foreach-Object {if ($_ Mode Start ith(“d”)) { Write-Ho t ($_ Na e + “ i a directory”)}} C c Cmdlet foreach-Object có c c tha C c tha ố có th giú bạn thê ố cho bạn chạy khối kịch vào header footer thông tin đ hi n thị 358 Bạn thấy kh c biệt bạn dùng foreach-Object cho hàng tr đối tư ng lúc ẽ vô nhanh chóng X Sử dụng where – ki ng d n where – object gatekee er (ngư i g c cổng) x c định đối tư ng q a where – object đư c thi t k đ xử lý ột khối kịch v i điều kiện phải tương th ch v i đối tư ng Khối kịch hoạt động giống c c ột lọc đư ng dẫn, ki m tra đối tư ng ã lệnh thôg q a n u trả gi trị true N u bạn muốn có danh lập Bạn có th chạy ch c c dịch vụ trạng th i th ộc t nh đư c thi t ã Get-Service | Where-Object {$_.Status –eq “R nning”} Cũng bạn tham chi v i foreach-Object, bạn sử dụng bi n $ _ special đối tư ng đư c ki tra Yê cầu khối lệnh phải trả lại $ True $ false 359 C ƯỜI SAI LẦM KHI SỬ DỤNG POWERSELL N   ủ y hông cho c c kịch thực thi Sử dụng dấu phẩy không c ch đ c c tha ố riêng biệt gọi hà     hông x c định chức n ng trư c sử dụng Q ên đư ng dẫn c c đối tư ng hông ch y n bi n thành ch ỗi Dùng th ật to n o nh không ch nh x c  hông  hông lấy phạm vi bi n account rộng c c đư ng dẫn  Gỡ lỗi  Q ên đ sử dụng l không cần N T có ẵn -I p ép An ninh việc cài đặt tâ ch b n thực thi indow PowerShell đầ tiên ngư i sử dụng 360 ột điều quan Vd: Bạn lên ạng tì thấy vài lệnh bạn th ch tì thấy kịch thực ch nh x c điều bạn muốn Bạn bi t kịch cần phải lư vào tập tin mở rộng PS1 Và bạn cố g ng chạy c c ngoại lệ đ bảo vệ c c kịch N u bạn chạy WindowsPowerShell bạn phải số ho đ ng nhậ vào c c kịch bạn thi t lậ c c ch nh ch thực đ RemoteSigned c ch dụng Set- xec tionPolicy C dlet th Set-ExecutionPolicy RemoteSigned II Sử dụng d u phẩy v i tham s C c chức n ng dụng g i mộ indow PowerShell thư ng gây bối rối cho ngư i dùng dụng ngôn ngữ kh c Sử dụng đoạn call ã lệnh V Scri t x c định chức n ng có hai tha erinfo(“Abraha Lincoln” ố chạy ) Function userinfo(name, age) Scri t cho “Na e “ & na e Scri t cho “Age “ & age End Function Trong VBScript giống ngôn ngũ lậ trình kh c hay ngôn ngữ kịch bản, bạn gọi function v i nhiề K t đoạn ột tham số, bạn dùng dấu phẩy đ hân biệt c c tha ã trư c a Name: Abraham Lincoln Age : 200 N u bạn chuy n đổi sử dụng chức n ng Window PowerShell Đoạn 361 ã ố function userinfo([string]$name,[int]$age) { Write-Ho t “Na e $na e” Write-Ho t “Age $age” } Giả sử bạn dùng chức n ng indow PowerShell ạn có th điều erinfo(“Abraha K t đoạn Lincoln” ) ã Name: Abraham Lincoln 200 Age : Trong đoạn ã t ổi bao gồ tên nên Age trống Trong VBScript, bạn gọi chương trình ( ột chức n ng sử dụng dấu ngoặc Bạn có th thử erinfo “Abraha Đoạn không trả lại gi trị),bạn không ã đ xem liệ ửa chữa c c vấn đề: Lincoln” ã dụng tương tự việc dùng dấu ngoặc C c dấu phẩy indow PowerShell đư c sử dụng đ tạo mảng đen ch y n tham số “Abraha Lincoln” đối tư ng mảng thành Đ gọi funcion nhiề tha erinfo “Abraha III ột chuỗi ố Lincoln” nh ă c sử dụng 362 Những ngôn ngữ kịch kh c không q an tâ việc x c định function tập tin kịch Nhưng đặc thù Windows PowerShell bạn phải l ôn x c định function trư c bạn sử dụng Windows PowerShell script đư c hi f nction thực thay đư c biên soạn trư c đư c thực thi Trong thuật ngữ đơn giản yê cầ có nghĩa kịch a hoạt động: function hello([string]$name) { Write-Ho t “Hello $na e” } hello “Steve” Kịch không th thực N u muốn thực phải dùng kịch sau đây; hello “Steve” function hello([string]$name) { Write-Ho t “Hello $na e” } IV Xử ý ng d n li u sang dạng chuỗi Trong ôi trư ng dòng lệnh k t dòng lệnh trư c liệu nhập dòng lệnh a C c liệ ban đầu dạng text a c c lệnh hân t ch k t dạng text v n trư c đ đư c c i ình cần Ngư c lại , Windows PowerShell thực thi từ đối tư ng đư ng dẫn Thay dụng chuỗi c c bi u thức, bạn có th q an tâ đ n collection object ro ertie 363 Vd: Về sử dụng danh indow PowerShell có th xử lý đư ng dẫn đ cho k t ch c c file thư ục thư ục gốc ô c ch dụng Get- ChildItem Cmdlet , k t cho bảng danh ch c c file đư c s p x theo tên file Get-ChildItem C:\ | Format-Table –property Name,LastWriteTime N u bạn muốn k t h v i chuỗi a hi n thị bạn có th thử đoạn lệnh ti p theo: “So e rando text “ + (Get-ChildItem C:\ | Format-Table –property Name,LastWriteTime) Ti c ã lại không cho k t Some ong ốn random text: Microsoft.PowerShell.Commands.Internal.Format.FormatStartData Microsoft.PowerShell.Commands.Internal Format.GroupStartData Microsoft.PowerShell.Commands.Internal.Format FormatEntryData Microsoft.PowerShell.Commands.Inter nal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format FormatEntryData Microsoft.PowerShell.Commands Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format FormatEntryData Microsoft.PowerShell.Comm ands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal Format.FormatEntryData Microsoft.PowerShell Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands 364 Internal.Format.FormatEntryData Microsoft.Power Shell.Commands.Internal.Format.FormatEntryData Vấn đề bạn k t h định dạng đối tư ng định dạng v n bạn thị đối tư ng thành dạng chuỗi hương thức to tring C c dòng đư c định dạng hương bảng thức tostring hi n thị Microsoft.PowerShell.Commands.Internal Format.FormatEntryData Microsoft.PowerShell.Commands.Internal Format.FormatEntryData Đ có k t ong ốn, bạn phải chuy n đổi liệu bảng thành dạng chuỗi Đ thực nhiệm vụ bạn sử dụng cmdlet out-string “So e rando text “ + (Get-ChildItem C:\ | Format-Table –property Name,LastWriteTime | Out-String) V Q ê n bi ạng chuỗi hi c c đối tư ng chuy n thành ch ỗi có th đọc đư c àn hình Một sai lầm phổ bi n ch ỗi c c loại liệ kh c đư c k t h p v i dấ + C c loại liệu tự động chuy n thành ch ỗi c ch dụng hương thức tostring() Doạn ã a ẽ thực điề $version = $ hell = “ indow PowerShell” $o t t tring = $ hell + “ “ + $ver ion Write-Host $outputstring 365 K t đư c in phải ch ỗi, n indow PowerShell Chú ý ki u liệ đầ tiên không việc chuy n đổi thất bại n u bạn đổi $ hell $ver ion sau $version = $ hell = “ indow PowerShell” $o t t tring = $ver ion + “ “ + $ hell Write-Host $outputstring Sở dĩ có ự thất bại indow PowerShell ẽ hi u bi n đầ tiên ng yên cố g ng chuy n đổi c c gi trị kh c thê chuỗi “ indow PowerShell” rõ ràng không hải vào ột số ột số ng yên Mà ột số ng yên không th đư c chuy n đổi N lý ch ỗi có th chứa c c gi trị số Windows PowerShell cố g ng chuy n đổi cho bạn, bạn cần đảm bảo gi trị đầ tiên hải ch ỗi, bạn phải chuy n đổi gi trị đầ tiên thành ch ỗi tiền tố [string] Bạn sửa thành đoạn lệnh sau: $o t VI t tring = [ tring]$ver ion + “ “ + $ hell Sử dụ ú Hầu h t c c kịch ngôn ngữ lậ trình dụng to n tử ch ng đ trị Bản dư i ột số to n tử: ý tự Ý nghĩa = or = = Bằng hông or != L n > 366 o nh gi L n >= Nhỏ < $y) { Write-Ho t “$x i greater than $y” } C c ã trư c chạy không lỗi ẽ không ong đ i Thay vào k t không đư c lên mục hành bạn tì thấy tập tin m i có tên Windows PowerShell bạn phải dùng to n tử a Operat Meaning -eq Bằng or 367 àn hình N u bạn ki bạn tra thư nội dung hông -ne -ine hông bằng(trư ng h p kh c Windows PowerShell -lt Nhỏ -le Nhỏ -gt L n -ge L n Khi bạn sử dụng to n tử c ch c c đoạn ã a ẽ cho k t c ch $x = $y = if($x -gt $y) { Write-Ho t “$x i greater than $y” } VII C g thực hi Đư ng dẫn lệnh u l nh mộ ng d n l nh indow PowerShell l n lấy sau xử lý đầu lệnh trư c Về mặt kỹ thuật bạn có th đặt số lư ng không gi i hạn c c lệnh đư ng dẫn Thông thư ng, kịch bản, bạn phải vài chục dòng lệnh ngôn ngữ kịch kh c thực dòng lệnh v i Windows 368 PowerShell Vấn đề ột số ngư i dùng indow PowerShell ốn tất kịch v i đư ng dẫn lệnh khổng lồ hông có kỹ thuật v i đư ng dẫn dài T y nhiên bạn không nên dùng bốn lệnh đư ng dẫn Bạn nên t ch thành c c hân đoạn, sử dụng c c gi trị tr ng gian lư trữ c c bi n điề ẽ giú bạn dễ dàng việc gỡ lỗi, sửa lỗi Ngay v i đư ng dẫn lệnh dài bạn bi t rõ trình tự thực Mặc dù q trình phức tạ việc tì c ch hoạt động q Nhưng ột vài th ng a bạn gặ khó kh n trình Sử dụng c c đoạn lệnh ng n cho c c lệnh dễ dàng dễ hi u bạn đọc kịch VIII Q ê ĩ ực v Bi n Những ngư i ki n thức indow PowerShell thư ng q ên co e Điều quan trọng bi n tạo đề có co e Tùy th ộc vào việc bạn định nghĩa bi n đâ Điề đư c thi t k đ có th sử dụng tên bi n giống ột shell Scri t hay f nction bi n có gi trị độc lập v i c c bi n có tên Một vd: function test() { Write-Ho t “In f nction te t() ” $a = Write-Ho t “Val e of a i $a” Write-Ho t “Leaving f nction te t() ” } 369 $a = Write-Ho t “Val e of a i $a” test Write-Ho t “Val e of a i $a” K t Value of a is: In function test() Value of a is: Leaving function test() Value of a is: Gi trị $a đư c đặt vào ột gi trị kh c f ncion th đ trở gi trị ban đầ f ncion đc gọi $a định nghĩa cri kh c $ định nghĩa te t f nction $a đầ tiên cri thực chất cri t co e Có nghĩa có th đặt đâ cri (có nghĩa không gi i hạn phạm vi) N dòng $a= đầu hà Khi bạn tạo $a m i f ncion th te t f ncion ch nh $a=1 có th thấy trọng funcion Bạn có điề v i bi n f ncion thực hiện, bi n không tồn Nói ch ng q y t c c c bi n có th đư c định nghĩa hà không th lấy gi trị cho hà l n N u bạn định nghĩa ột bi n Windows PowerShell có th đư c thấy scrip bạn chạy hay f ncion có scrip N u bạn định nghĩa ột bi n hà x c định scrip bạn k t thúc lệnh 370 f ncion c c bi n không dc dụng Debugger (gỡ lỗi) IX Windows PowerShell bao gồm nhiều khả n ng gỡ lỗi m i đ tì dễ dàng thấy lỗi kịch bạn N u kịch bạn ột vài dòng lệnh có th dễ dàng tì lỗi.Khi kịch phức tạp , lỗi có th lỗi cú h bạn có th sử dụng debugger hiệu dụng l p NET Khi Available X Lỗi có th m c phải đối v i ngư i dùng Windows PowerShell c ch sử dụng đối tương Co đ tương t c v i hệ điề hành hệ thống hay ứng dụng tốt chỗ hỗ tr rộng rãi có nhiề v dụ có ẵn cho bạn thấy th đ hoàn thành nhiệm vụ v i đối tư ng COM Vấn đề tương t c v i đối tư ng Com qua Windows PowerShell thư ng chậ thử trư c v i l c cl net net đư c o v i sử dụng đối tư ng net trư c sử dụng COM ã bạn chạy nhanh tốt Trong nhiề trư ng h p, ẵn thư ng đầy dủ t nh n ng 371 [...]... Sử dụng to n tử o 420 nh không đúng Cố g ng đ thực hiện q nhiều lệnh trong một đư ng dẫn lệnh Q ên Lĩnh vực về Bi n 423 423 hông Sử dụng Debugger (gỡ lỗi) 425 hông ử dụng l p NET Khi Available 425 13 Phần 1: T ower Shell 2 C CƠ BẢN VỀ INDO O ER N     Tôi là Sự ra đ i và h t tri n của windows powershell Cài đặt windows powershell 2 Tương t c v i giao diện dòng lệnh của windows powershell Sử dụng... trong PowerShell sử dụng c c API Một s c i ti n nhỏ á nh sẵ ó bi n đư c thê vào cho c c lệnh sẵn có đ t ng c c chức n ng III C : Một số t Windows PowerShell 2 indow PowerShell là ột sự thay th cho indow PowerShell 1 vì vậy chúng không th tồn tại ch ng trong cùng 1 hệ thống indow PowerShell có th đư c cài đặt trên cả nền hệ thống x86 và x64 c ả Windows XP with SP3, Windows Server 20 03 with SP2, Windows. .. bạn có th xe trên blog của đội h t tri n Windows PowerShell (http://blogs.msdn.com /powershell/ archive /20 07/03/19/monad-manifesto-the-origin-ofwindows -powershell. aspx)  M Windows PowerShell 1.0 Windows PowerShell mang lại sự tương t c tốt nhất giữa indow Shell và ức mạnh của c c SH cri t Nó tạo nên ôi trư ng dòng lệnh hong hú ạnh mẽ à bạn có th chạy c c lệnh PowerShell m i gọi là C dlet Chúng là c c... PowerShell 2. 0 Mặc cho sự h t tri n chậm của Windows PowerShell 1, Một sự h t tri n Windows PowerShell của cộng đổng nổi lên và đặt nó từng bư c theo kịp th i đại C c nhà h t tri n Windows PowerShell của Micro oft đã đưa ra nhiều phản hồi và chỉ tr ch đ n c c sản phẩ đó và hứa hẹn sẽ sản xuất một sản phẩm m i xứng đ ng hơn đó là Windows PowerShell 2. 0 Điề gì i trong indow PowerShell à là cho nó trở nên đặc biệt... PowerShell 2 Gọi một c ch đơn giản trang soạn thảo lệnh b ng c ch indow PowerShell là PSH Ta có th khởi động Start➪All Programs Windows PowerShell V2 Windows PowerShell V2 Khi bạn dùng indow Vi ta bạn cần clik chuộ phải và chạy ở quyền Ad ini trator Hay không cần clik chuột phải khi bạn đã có q yền Administrator Khi Windows PowerShell 2 khởi động thì trang soạn thảo lệnh đư c mở Nó giống hell dòng lệnh... 4 bư c đ cài indow PowerShell a Download và cài đặt Microsoft NET Framework 2. 0 17 b c d Download và cài đặt Microsoft NET Framework 3.5.1 i Yê cầ cho IS ( ôi trư ng t ch h p kịch bản) và O t-GridView Download và cài đặt WinRM 2. 0 CTP3 i Thuận l i cho c c t nh n ng điều khi n từ xa và ch độ nền Download và cài đặt Windows PowerShell 2 5 Kh ộng Command Shell của Windows PowerShell 2 Gọi một c ch đơn... thạo v i Windows PowerShell C c nhà h t tri n của Micro oft đã b t đầu thảo luận về thuận l i của indow PowerShell 1 và chẳng bao lâ đã t ng ra c c ản phẩ như Micro ofe xchange 7 và Sy te Center O eration Manager (SCOM còn gọi là MOM) Sa đó PowerShell 1 đã đư c h t hành v i indow Server 8 Chúng ta ẽ thấy rất thú vị về điề này bởi nó đã bi n indow PowerShell thành chủ đạo II ê n Windows PowerShell 2. 0 Mặc... folder WindowsPowerShell trong fold My Documents n nó không tồn tại Bạn có th dùng code PSH n u bạn muốn thực thi mỗi khi một hell đư c mở trong profile của bạn N u muốn hiệu chỉnh giao diện có th dùng đoạn code sau: $Shell = $Host.UI.RawUI $Shell indowTitle= PowerShell Obey Me” $Shell ackgro ndColor=” hite” $Shell Foregro ndColor=” l e” $size = $Shell.WindowSize $size.width= 120 $size.height=55 $Shell.WindowSize... kịch 25 bản cục bộ Đóng cửa sổ PSH và ở một shell m i có th xe k ch thư c đư c thay đổi như th nào tiê đề à và Chú ý Lệnh Clear-Ho t đư c thê vào ở cuối mỗi kịch bản rofile đ xóa tr ng àn hình Rất hữ ch khi có q nhiều thứ trên àn hình và ốn xóa nhanh nó Cũng có th dùng lệnh cl đ thực thi III T á c của Windows PowerShell ISE indow PowerShell IS giú là việc dễ hơn v i Windows PowerShell Khởi động PowerShell. .. v i Windows PowerShell Khởi động PowerShell ISE bằng c ch vào Start➪All Programs Windows PowerShell V2 Windows PowerShell V2 Nó đư c thi t k dựa trên c c kh i niệ indow nó không q hức tạ T y nhiên ột số cải ti n không rõ ràng V dụ đưa ra tr giú nhanh hơn hi bạn không hi u về lệnh Cmdlet bạn muốn đư c tr giú nhấn F1 và Windows sẽ hi n thị cú h lệnh Cmdlet cũng như c c thông tin kh c về lệnh này N u

Ngày đăng: 02/06/2016, 23:11

TỪ KHÓA LIÊN QUAN

w