SPOT подлинная операция по автоматизации и техническому обслуживанию Linux Shell (MU Class Edition) Qianfeng Образование.
Цена: 704руб. (¥39.1)
Артикул: 695652392125
Вес товара: ~0.7 кг. Указан усредненный вес, который может отличаться от фактического. Не включен в цену, оплачивается при получении.
PGltZyBjbGFzcz0iZGVzY19hbmNob3IiIGlkPSJkZXNjLW1vZHVsZS0xIiBzcmM9Imh0dHA6Ly9hc3NldHMuYWxpY2RuLmNvbS9raXNzeS8xLjAuMC9idWlsZC9pbWdsYXp5bG9hZC9zcGFjZWJhbGwuZ2lmIj48ZGl2PjxkaXY+PHN0cm9uZz7QntGB0L3QvtCy0L3QsNGPINC40L3RhNC+0YDQvNCw0YbQuNGPPC9zdHJvbmc+PC9kaXY+PGRpdj4gICAgICZuYnNwOyAgICA8L2Rpdj48L2Rpdj48dGFibGUgd2lkdGg9Ijc5MCIgYm9yZGVyPSIwIiBjZWxsc3BhY2luZz0iMCIgY2VsbHBhZGRpbmc9IjAiPjx0Ym9keT48dHI+PHRkIHdpZHRoPSIxMjAiIGFsaWduPSJyaWdodCI+0JfQsNCz0L7Qu9C+0LLQvtC6OjwvdGQ+PHRkPiZuYnNwOyZuYnNwO9CQ0LLRgtC+0LzQsNGC0LjRh9C10YHQutCw0Y8g0Y3QutGB0L/Qu9GD0LDRgtCw0YbQuNGPINC4INC+0LHRgdC70YPQttC40LLQsNC90LjQtSBMaW51eCBTaGVsbCAo0LLQtdGA0YHQuNGPINC60LvQsNGB0YHQsCBNVSk8L3RkPjwvdHI+PHRyPjx0ZCB3aWR0aD0iMTIwIiBhbGlnbj0icmlnaHQiPtCQ0LLRgtC+0YA6PC90ZD48dGQ+Jm5ic3A7Jm5ic3A7UWlhbmZlbmcgRWR1Y2F0aW9uIEVkdWNhdGlvbiBIaWdoIEVkdWNhdGlvbiBQcm9kdWN0IFByb2R1Y3QgRGVjb3JwdGlvbjwvdGQ+PC90cj48dHI+PHRkIHdpZHRoPSIxMjAiIGFsaWduPSJyaWdodCI+0JjQt9C00LDRgtC10LvRjNGB0YLQstC+OjwvdGQ+PHRkPiZuYnNwOyZuYnNwO9Cb0Y7QtNC4INC/0L7RgdC70LUg0L/RgNC10YHRgdGLPC90ZD48L3RyPjx0cj48dGQgd2lkdGg9IjEyMCIgYWxpZ249InJpZ2h0Ij7QlNCw0YLQsCDQv9GD0LHQu9C40LrQsNGG0LjQuDo8L3RkPjx0ZD4mbmJzcDsmbmJzcDsyMDE5LTA0LTAxPC90ZD48L3RyPjx0cj48dGQgd2lkdGg9IjEyMCIgYWxpZ249InJpZ2h0Ij7QktC10YDRgdC40Y86PC90ZD48dGQ+Jm5ic3A7Jm5ic3A7MSDQstC10YDRgdC40Y8g0L7QtNC40L0g0YDQsNC3PC90ZD48L3RyPjx0cj48dGQgd2lkdGg9IjEyMCIgYWxpZ249InJpZ2h0Ij5JU0JOOjwvdGQ+PHRkPiZuYnNwOyZuYnNwOzk3ODcxMTU1MzMyNDE8L3RkPjwvdHI+PHRyPjx0ZCB3aWR0aD0iMTIwIiBhbGlnbj0icmlnaHQiPtCg0YvQvdC+0YfQvdCw0Y8g0YbQtdC90LA6PC90ZD48dGQ+Jm5ic3A7Jm5ic3A7NDkuODwvdGQ+PC90cj48L3Rib2R5PjwvdGFibGU+PGltZyBjbGFzcz0iZGVzY19hbmNob3IiIGlkPSJkZXNjLW1vZHVsZS0yIiBzcmM9Imh0dHA6Ly9hc3NldHMuYWxpY2RuLmNvbS9raXNzeS8xLjAuMC9idWlsZC9pbWdsYXp5bG9hZC9zcGFjZWJhbGwuZ2lmIj48ZGl2PjxkaXY+PHN0cm9uZz7QntCz0LvQsNCy0LvQtdC90LjQtTwvc3Ryb25nPjwvZGl2PjxkaXY+ICAgICAmbmJzcDsgICAgPC9kaXY+PC9kaXY+PGRpdj7Qk9C70LDQstCwIDEg0J/QvtC70YPRh9C40YLQtSDQuNC30LLQtdGB0YLQvdC+0YHRgtGMINC+0LHQvtC70L7Rh9C60LUgMTxicj4xLjEg0JrQsNC6INC/0L7QtNC60LvRjtGH0LjRgtGMINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INC4INGP0LTRgNCwIDE8YnI+MS4yIFNoZWxsINC/0L7QtNC60LvRjtGH0LDQtdGCINC00YDRg9Cz0LjQtSDQv9GA0L7Qs9GA0LDQvNC80YsgMjxicj4xLjMgU2hlbGwg0YLQsNC60LbQtSDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0L/RgNC+0LPRgNCw0LzQvNC40YDQvtCy0LDQvdC40LUgMjxicj4xLjQgU2hlbGwgLSDRjdGC0L4g0Y/Qt9GL0Log0YHRhtC10L3QsNGA0LjRjyAzPGJyPjEuNSDQoNCw0LfQu9C40YfQvdGL0LUg0LLQtdGA0YHQuNC4IFNoZWxsIDMgMzxicj4xLjUuMSBCb3VybmUgU2hlbGwgNDxicj4xLjUuMiBDIFNoZWxsIDQ8YnI+MS41LjMgQmFzaCBTaGVsbCA0PGJyPjEuNS40INCf0YDQvtGB0LzQvtGC0YAgU2hlbGwg0LLQtdGA0YHQuNC4IDQ8YnI+MS42IFNoZWxsIC0g0Y3RgtC+INC90LDQstGL0Log0YDQsNCx0L7RgtGLINC4INGC0LXRhdC90LjRh9C10YHQutC+0LPQviDQvtCx0YHQu9GD0LbQuNCy0LDQvdC40Y8gNTxicj4xLjcg0J7Qv9GA0LXQtNC10LvQtdC90LjQtSDQv9C10YDQtdC80LXQvdC90YvRhSDQvtCx0L7Qu9C+0YfQutC4IDc8YnI+MS44INCi0LjQvyDQv9C10YDQtdC80LXQvdC90L7QuSDQvtCx0L7Qu9C+0YfQutC4IDc8YnI+MS44LjEg0J/QvtC70YzQt9C+0LLQsNGC0LXQu9GM0YHQutCw0Y8g0L/QtdGA0LXQvNC10L3QvdCw0Y8gNzxicj4xLjguMiDQv9C10YDQtdC80LXQvdC90LDRjyDRgdGA0LXQtNGLIDg8YnI+MS44LjMg0J/QtdGA0LXQvNC10L3QvdCw0Y8g0L/QvtC30LjRhtC40Y8gOTxicj4xLjguNCDQn9GA0LXQtNCy0LDRgNC40YLQtdC70YzQvdCw0Y8g0L/QtdGA0LXQvNC10L3QvdCw0Y8gOTxicj4xLjkg0J3QsNC30L3QsNGH0LXQvdC40LUg0L/QtdGA0LXQvNC10L3QvdGL0YUg0L7QsdC+0LvQvtGH0LrQuCAxMDxicj4xLjkuMSDQn9GA0Y/QvNC+0LUg0L3QsNC30L3QsNGH0LXQvdC40LUgMTA8YnI+MS45LjIg0KfQuNGC0LDRgtGMINGBINC60LvQsNCy0LjQsNGC0YPRgNGLINC4INC90LDQt9C90LDRh9C40YLRjCDQt9C90LDRh9C10L3QuNC1IDEwPGJyPjEuOS4zINCY0YHQv9C+0LvRjNC30YPQudGC0LUg0L/QsNGA0LDQvNC10YLRgNGLINC60L7QvNCw0L3QtNC90L7QuSDRgdGC0YDQvtC60Lgg0LTQu9GPINC90LDQt9C90LDRh9C10L3QuNGPIDExPGJyPjEuOS40INCY0YHQv9C+0LvRjNC30YPQudGC0LUg0LLRi9GF0L7QtCDQutC+0LzQsNC90LTRiywg0YfRgtC+0LHRiyDQvdCw0LfQvdCw0YfQuNGC0Ywg0YDQtdC30YPQu9GM0YLQsNGCIDExPGJyPjEuOS41INCf0YDQvtGH0YLQuNGC0LUg0L3QsNC30L3QsNGH0LXQvdC40LUg0LTQsNC90L3Ri9GFINC40Lcg0YTQsNC50LvQsCAxMjxicj4xLjEwINCe0L/QtdGA0LDRhtC40Y8g0L/QtdGA0LXQvNC10L3QvdC+0Lkg0L7QsdC+0LvQvtGH0LrQuCAxMzxicj4xLjEwLjEgRXhwciDQnNC90L7Qs9C+0YfQuNGB0LvQtdC90L3Ri9C1INC30LDQsdCw0LLQvdGL0LUg0LfQsNC60LDQt9GLIDEzPGJyPjEuMTAuMiAiKCgoKCgpKSkiINC40LvQuCAiW10iLjxicj4xLjEwLjMg0J/Rg9GB0YLRjCDRh9C40YHQu9C10L3QvdGL0LUg0L/QvtGA0Y/QtNC+0LogTGluZyAxNDxicj4xLjEwLjQg0JTQtdGB0Y/RgtC40YfQvdCw0Y8g0L7Qv9C10YDQsNGG0LjRjyBTaGVsbCAxNDxicj4xLjExINCj0LTQsNC70LjRgtGMLCDQt9Cw0LzQtdC90LjRgtGMINC4INC30LDQvNC10L3QuNGC0Ywg0L/QtdGA0LXQvNC10L3QvdGL0LUg0L7QsdC+0LvQvtGH0LrQuCAxNDxicj4xLjExLjEg0KPQtNCw0LvQuNGC0Ywg0L/QtdGA0LXQvNC10L3QvdGD0Y4g0L7QsdC+0LvQvtGH0LrQuCAxNDxicj4xLjExLjIg0JfQsNC80LXQvdCwINC/0LXRgNC10LzQtdC90L3QvtC5INC+0LHQvtC70L7Rh9C60LggMTU8YnI+MS4xMS4zINCX0LDQvNC10L3QsCDQv9C10YDQtdC80LXQvdC90L7QuSDQvtCx0L7Qu9C+0YfQutC4IDE2PGJyPjEsMTIg0J/QtdGA0LXQvNC10L3QvdCw0Y8g0L7QsdC+0LvQvtGH0LrQsCDRgdCw0LzQvtGB0YLQvtGP0YLQtdC70YzQvdC+IDE2PGJyPjEuMTMg0KHQv9C10YbQuNCw0LvRjNC90YvQtSDRgdC40LzQstC+0LvRiyDQsiDQv9C10YDQtdC80LXQvdC90YvRhSDQvtCx0L7Qu9C+0YfQutC4IDE3PGJyPjEuMTQg0KDQtdC30Y7QvNC1INGN0YLQvtC5INCz0LvQsNCy0YsgMjE8YnI+MS4xNSDQo9C/0YDQsNC20L3QtdC90LjQtSAyMTxicj7Qk9C70LDQstCwIDIg0KLQtdGB0YIg0L3QsCDRgdC+0YHRgtC+0Y/QvdC40LUg0L7QsdC+0LvQvtGH0LrQuCAyMzxicj4yLjEg0J7Qv9C10YDQsNGC0L7RgNGLINC40YHQv9GL0YLQsNC90LjQuSDQvdCwINGD0YHQu9C+0LLQuNC1INCyINC+0LHQvtC70L7Rh9C60LUgMjM8YnI+Mi4xLjEg0KLQtdGB0YIg0YTQsNC50LvQsCAyMzxicj4yLjEuMiBJbnRlZ2VyIFRlc3QgMjQ8YnI+Mi4xLjMg0KLQtdGB0YIg0YHRgtGA0L7QutC4IDI1PGJyPjIuMS40INCb0L7Qs9C40YfQtdGB0LrQuNC5INC+0L/QtdGA0LDRgtC+0YAgMjY8YnI+Mi4yINCV0YHQu9C4INGD0YLQstC10YDQttC00LXQvdC40LUg0YPRgdC70L7QstC40Y8gMjc8YnI+Mi4yLjEg0JXRgdC70Lgg0L7RgtC00LXQu9GM0L3QsNGPINCy0LXRgtCy0YwgMjc8YnI+Mi4yLjIg0JXRgdC70Lgg0LTQstC+0LnQvdCw0Y8g0LLQtdGC0LLRjCAyNzxicj4yLjIuMywg0LXRgdC70Lgg0LzQvdC+0LPQviAt0Y/QsdGA0LDQvdC90L7QtSAyODxicj4yLjIuNCDQldGB0LvQuCDQutC+0L3RhNC40LPRg9GA0LDRhtC40Y8g0L7Qv9C10YDQsNGC0L7RgNCwIFlVTSDQmNGB0YLQvtGH0L3QuNC6INGE0LDQutGC0LjRh9C10YHQutC+0LPQviDQsdC+0LXQstC+0LPQviDRgdC60YDQuNC/0YLQsCAyOTxicj4yLjMg0JfQsNGP0LLQu9C10L3QuNC1INC+INGD0YHQu9C+0LLQuNC4INGB0LvRg9GH0LDRjyAzMDxicj4yLjQg0KPRgdC70L7QstC40LUg0YPRgdC70L7QstC40Y8sINCx0L7RgNGM0LHQsCDRgSDQtNC10LvQvtC8Ljxicj4yLjQuMSDQlNC10LvQviDQo9C00LDQu9C40YLRjCDRgNC10YjQtdC90LjQtSDQv9C+0LvRjNC30L7QstCw0YLQtdC70Y8gMzE8YnI+Mi40LjIuINCg0LXQsNC70LjQt9Cw0YbQuNGPINC40YHQv9C+0LvRjNC30L7QstCw0L3QuNGPINGB0LjRgdGC0LXQvNC90L7Qs9C+INC90LDQsdC+0YDQsCDQuNC90YHRgtGA0YPQvNC10L3RgtC+0LIgMzI8YnI+Mi40LjMg0KDQtdCw0LvQuNC30LDRhtC40Y8g0LrQvtGA0L/Rg9GB0LAgSnVtcHNlcnZlciAzMzxicj4yLjQuNCDQoNC10LDQu9C40LfQsNGG0LjRjyDQvdC10YHQutC+0LvRjNC60LjRhSDQstC10YDRgdC40Lkg0YPRgdGC0LDQvdC+0LLQutC4IFBIUCAzNTxicj4yLjUg0KHQstC+0LTQutCwINGN0YLQvtC5INCz0LvQsNCy0YsgMzc8YnI+Mi42INCj0L/RgNCw0LbQvdC10L3QuNC1IDM3PGJyPtCT0JvQkNCS0JAgMyDQodCS0J7QmNCZINCf0JjQotCQ0J0gMzk8YnI+My4xINCU0LvRjyDQutGA0YPQs9C+0LLQvtC5INCz0YDQsNC80LzQsNGC0LjRh9C10YHQutC+0Lkg0YHRgtGA0YPQutGC0YPRgNGLIDM5PGJyPjMuMiDQlNC70Y8g0LrRgNGD0LPQvtCy0L7QuSDRgNC10YfQuCDQsdC+0YDRjNCx0YsgNDA8YnI+My4yLjEg0JTQu9GPINC+0L/QtdGA0LDRgtC+0YDQsCDRhtC40LrQu9CwINC00LvRjyDQtNC+0YHRgtC40LbQtdC90LjRjyDQvtCx0L3QsNGA0YPQttC10L3QuNGPIFBJTkcgUEFORyBQQUNUPGJyPjMuMi4yINCU0LvRjyDQvtC/0LXRgNCw0YLQvtGA0LAg0YbQuNC60LvQsCDQtNC70Y8g0LTQvtGB0YLQuNC20LXQvdC40Y8g0L/QsNGA0YLQuNC50L3QvtCz0L4g0YHQvtC30LTQsNC90LjRjyDQv9C+0LvRjNC30L7QstCw0YLQtdC70LXQuSA0MTxicj4zLjIuMyDQlNC70Y8g0L7Qv9C10YDQsNGC0L7RgNCwINGG0LjQutC70LAg0LTQu9GPINGA0LXQsNC70LjQt9Cw0YbQuNC4INC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5INC/0LDRgNGC0LjQuSDQsiDRhNCw0LnQu9C1INC00LvRjyDRgdC+0LfQtNCw0L3QuNGPIDQyPGJyPjMuMyDQntC20LjQtNCw0LnRgtC1INC40L3RgtC10YDQsNC60YLQuNCy0L3QvtCz0L4g0L7RgtC60YDRi9GC0L7Qs9C+INC60LvRjtGH0LAgUHVzaCA0Mzxicj4zLjMuMSDQntC20LjQtNCw0LXRgtGB0Y8sINGH0YLQviDRgNC10LDQu9C40LfRg9C10YIg0L3QtdC40L3RgtC10YDQtdC60YLQuNGA0L7QstCw0L3QuNC1IDQzPGJyPjMuMy4yINCe0LbQuNC00LDQudGC0LUg0YDQtdCw0LvQuNC30LDRhtC40Lgg0L3QtdC40L3RgtCw0LrRgtC40YDRg9GO0YnQuNGFINGE0LDQudC7INC/0LXRgNC10LTQsNGH0LggNDQ8YnI+My4zLjMg0J7QttC40LTQsNC50YLQtSDRgNC10LDQu9C40LfRg9C10YIg0L/QsNC60LXRgtC90YvQuSDRhdC+0YHRgiDQvtCx0YnQtdC00L7RgdGC0YPQv9C90L7Qs9C+INC60LvRjtGH0LAgUHVzaCA0NTxicj4zLjMuNCDQtNC70Y8g0L7Qv9C10YDQsNGC0L7RgNCwINGG0LjQutC70LAsINGH0YLQvtCx0Ysg0YDQtdCw0LvQuNC30L7QstCw0YLRjCDQuNC30LzQtdC90LXQvdC40LUg0L/QsNGA0L7Qu9GPINC/0LDRgNGC0LjQuCDRhdC+0YHRgtCwIDQ4PGJyPjMuMy41INCU0LvRjyDQvtC/0LXRgNCw0YLQvtGA0LAg0YbQuNC60LvQsCDQtNC70Y8g0LTQvtGB0YLQuNC20LXQvdC40Y8g0L/QsNC60LXRgtC90L7Qs9C+INGD0LTQsNC70LXQvdC90L7Qs9C+INGF0L7RgdGC0LAg0LrQvtC90YTQuNCz0YPRgNCw0YbQuNGPIFNTSCA0OTxicj4zLjQg0LLQviDQstGA0LXQvNGPINC/0LXRgtC70Lgg0Lgg0LTQviDRhtC40LrQu9CwIDUwPGJyPjMuNC4xINCSINGC0L4g0LLRgNC10LzRjyDQutCw0Log0LrRgNGD0LPQvtCy0LDRjyDQutGA0YPQs9C+0LLQsNGPINGB0YLRgNGD0LrRgtGD0YDQsCDQs9GA0LDQvNC80LDRgtC40LrQuCA1MTxicj4zLjQuMiDQlNC+INGG0LjQutC70LjRh9C10YHQutC+0LPQviDRgdC40L3RgtCw0LrRgdC40YfQtdGB0LrQvtCz0L4g0LPRgNCw0LzQvNCw0YLQuNGH0LXRgdC60L7QuSDRgdGC0YDRg9C60YLRg9GA0YsgNTE8YnI+My41INCh0L/QtdC60LXQvSDQodC/0LXQutC10L0g0LHQvtGA0YzQsdCwIDUxPGJyPjMuNS4xLiDQn9GA0Lgg0L/RgNC10LTQu9C+0LbQtdC90LjQuCDRhtC40LrQu9CwINC00LvRjyDQtNC+0YHRgtC40LbQtdC90LjRjyDQv9Cw0YDRgtC40LnQvdC+0LPQviDRgdC+0LfQtNCw0L3QuNGPINC/0L7Qu9GM0LfQvtCy0LDRgtC10LvQtdC5IDUxPGJyPjMuNS4yINCf0YDQuCDQvtC/0LXRgNCw0YbQuNC4INC/0L4g0YbQuNC60LvQvtC8INC4INC00L4g0YLQtdGB0YLQuNGA0L7QstCw0L3QuNGPINCy0LXQu9C+0YHQuNC/0LXQtNC90L7Qs9C+INC/0YDQtdC00LvQvtC20LXQvdC40Y8g0YPQtNCw0LvQtdC90L3QvtC1INGB0L7QtdC00LjQvdC10L3QuNC1INGF0L7RgdGC0LAgNTI8YnI+My41LjMg0LTQu9GPLCDQv9C+0LrQsCwg0LTQviBEdWVsIDUzPGJyPjMuNiDQo9C/0YDQsNCy0LvQtdC90LjQtSDQvtCx0L7RgNGD0LTQvtCy0LDQvdC40LXQvCDQvtCx0L7RgNGD0LTQvtCy0LDQvdC40Y8gNTU8YnI+My42LjEg0LTQu9GPINGG0LjQutC70LAg0LTQu9GPINGA0LXQsNC70LjQt9Cw0YbQuNC4INC+0LTQvdC+0LLRgNC10LzQtdC90L3QvtCz0L4g0YPQv9GA0LDQstC70LXQvdC40Y8g0L7QsdC+0LvQvtGH0LrQvtC5IDU1PGJyPjMuNi4yINC00LvRjyDRhNC+0L3QvtCy0L7Qs9C+INGG0LjQutC70LAsINGH0YLQvtCx0Ysg0YDQtdCw0LvQuNC30L7QstCw0YLRjCDQv9Cw0YDQsNC70LvQtdC70YzQvdGL0Lkg0LrQvtC90YLRgNC+0LvRjCDQvtCx0L7Qu9C+0YfQutC4IDU2PGJyPjMuNyDQpNCw0LrRgtC40YfQtdGB0LrQsNGPINCx0L7RgNGM0LHQsCDRgSDQvtC00L3QvtCy0YDQtdC80LXQvdC90YvQvNC4INC60L7QvdGC0YDQvtC70YzQvdGL0LzQuCDRgdC70YPRh9Cw0Y/QvNC4INC+0LHQvtC70L7Rh9C60LggNTY8YnI+My43LjEg0LTQu9GPINGG0LjQutC70LAsINGH0YLQvtCx0Ysg0YDQtdCw0LvQuNC30L7QstCw0YLRjCDRhNCw0LrRgtC40YfQtdGB0LrRg9GOINCx0L7RgNGM0LHRgyDRgSDQv9Cw0YDQsNC70LvQtdC70YzQvdGL0Lwg0YPQv9GA0LDQstC70LXQvdC40LXQvCDQutC+0YDQv9GD0YHQsCBTaGVsbCA1Njxicj4zLjcuMiDQlNC70Y8g0YTQvtC90L7QstC+0LPQviDRhtC40LrQu9CwLCDRh9GC0L7QsdGLINGA0LXQsNC70LjQt9C+0LLQsNGC0Ywg0YTQsNC60YLQuNGH0LXRgdC60YPRjiDQsdC+0YDRjNCx0YMg0YEg0L/QsNGA0LDQu9C70LXQu9GM0L3Ri9C8INGD0L/RgNCw0LLQu9C10L3QuNC10Lwg0LrQvtGA0L/Rg9GB0LAgU2hlbGwgNTc8YnI+My43LjMgTGludXggUGlwZWxpbmUg0YDQtdCw0LvQuNC30YPQtdGCINGE0LDQutGC0LjRh9C10YHQutGD0Y4g0LHQvtGA0YzQsdGDINGBINC+0LTQvdC+0LLRgNC10LzQtdC90L3Ri9C8INGD0L/RgNCw0LLQu9C10L3QuNC10Lwg0LrQvtGA0L/Rg9GB0LAgU2hlbGwgNTg8YnI+My44INCg0LXQt9GO0LzQtSDRjdGC0L7QuSDQs9C70LDQstGLIDU5PGJyPjMuOSDQo9C/0YDQsNC20L3QtdC90LjQtSA2MDxicj7Qk9C70LDQstCwIDQg0JzQsNGB0YHQuNCyIFNoZWxsIDYxPGJyPjQuMSDQntGB0L3QvtCy0L3QsNGPINC60L7QvdGG0LXQv9GG0LjRjyDQvNCw0YHRgdC40LLQsCBTaGVsbCA2MTxicj40LjIg0YLQuNC/0LAg0LzQsNGB0YHQuNCy0LAgU2hlbGwgNjE8YnI+NC4yLjEg0J7QsdGL0YfQvdGL0Lkg0LzQsNGB0YHQuNCyIDYyPGJyPjQuMi4yINCQ0YHQstGP0LfQsNC90L3Ri9C5INC80LDRgdGB0LjQsiA2Mjxicj40LjIuMyDQntC/0YDQtdC00LXQu9C40YLQtSDRgtC40L8g0LzQsNGB0YHQuNCy0LAgNjI8YnI+NC4zINCe0L/RgNC10LTQtdC70LXQvdC40LUg0LzQsNGB0YHQuNCy0LAg0L7QsdC+0LvQvtGH0LrQuCA2Mjxicj40LjMuMSDQndC10L/QvtGB0YDQtdC00YHRgtCy0LXQvdC90L7QtSDQvtC/0YDQtdC00LXQu9C10L3QuNC1INC80LDRgdGB0LjQstCwIDYzPGJyPjQuMy4yINCe0L/RgNC10LTQtdC70LjRgtGMINC80LDRgdGB0LjQsiDQvtC/0YDQtdC00LXQu9C10L3QuNGPIDYzPGJyPjQuMy4zINCc0LDRgdGB0LjQsiA2MyDQvdC10L/RgNGP0LzQvtCz0L4g0L7Qv9GA0LXQtNC10LvQtdC90LjRjyA2Mzxicj40LjMuNCDQn9GA0L7Rh9C40YLQsNC50YLQtSDQvNCw0YHRgdC40LIg0L7Qv9GA0LXQtNC10LvQtdC90LjQuSDQuNC3INGE0LDQudC70LAgNjQ8YnI+NC40INCf0LXRgNC10YXQvtC0INC4INC90LDQt9C90LDRh9C10L3QuNC1INC80LDRgdGB0LjQstCwIFNoZWxsIDY0PGJyPjQuNC4xINCe0LHRidC40Lkg0LTQvtGB0YLRg9C/INC6INC80LDRgdGB0LjQstGDIFNoZWxsIDY0PGJyPjQuNC4yLCDQv9C+0LrQsCDQv9C10YLQu9GPLCDRh9GC0L7QsdGLINGA0LXQsNC70LjQt9C+0LLQsNGC0Ywg0L7QsdGF0L7QtCDQvdCwINC80LDRgdGB0LjQstC1IFNoZWxsIDY1PGJyPjQuNC4zINCU0LvRjyDRhtC40LrQu9CwLCDRh9GC0L7QsdGLINGA0LXQsNC70LjQt9C+0LLQsNGC0Ywg0L7QsdGF0L7QtCDQvNCw0YLRgNC40YbRiyDQvtCx0L7Qu9C+0YfQtdC6IDY2PGJyPjQuNC40INCd0LDQt9C90LDRh9C10L3QuNC1INC80LDRgdGB0LjQstCwIFNoZWxsIDY2PGJyPjQuNC41INCj0LTQsNC70LjRgtGMINC80LDRgdGB0LjQsiBTaGVsbCA2Nzxicj40LjQuNi4g0J/QtdGA0LXRhdCy0LDRgiDQuCDQt9Cw0LzQtdC90LAg0LzQsNGB0YHQuNCy0LAgU2hlbGwgNjc8YnI+NC41INCh0LrRgNC40L/RgiDQvNCw0YHRgdC40LLQvtCyINC+0LHQvtC70L7Rh9C60Lgg0KTQsNC60YLQuNGH0LXRgdC60LjQuSDQsdC+0LkgNjg8YnI+NC41LjEg0KDQtdCw0LvQuNC30LDRhtC40Y8g0LzQsNGB0YHQuNCy0LAg0LzQsNGB0YHQuNCy0LAg0L3QtSDRgdGC0LDRgtC40YHRgtC40LrQsCA2ODxicj40LjUuMiDQodGC0LDRgtC40YHRgtC40LrQsCDQvNCw0YHRgdC40LLQsCDQvNCw0YHRgdC40LLQsCDQmtC+0LvQuNGH0LXRgdGC0LLQviDRgNCw0LfQu9C40YfQvdGL0YUg0YLQuNC/0L7QsiDQvtCx0L7Qu9C+0YfQutC4IDY5PGJyPjQuNS4zINCh0YLQsNGC0LjRgdGC0LjQutCwINC80LDRgdGB0LjQstCwINC80LDRgdGB0LjQstCwIFRDUCDQodC+0LXQtNC40L3QtdC90LjQtSA3MDxicj40LjYg0KHQstC+0LTQutCwINGN0YLQvtC5INCz0LvQsNCy0YsgNzE8YnI+NC43INCj0L/RgNCw0LbQvdC10L3QuNC1IDcxPGJyPtCT0LvQsNCy0LAgNSDQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSDRhNGD0L3QutGG0LjQuCDQsiDQv9GA0L7Qs9GA0LDQvNC80LjRgNC+0LLQsNC90LjQuCBTaGVsbCA3Mzxicj41LjEg0JrQvtC90YbQtdC/0YbQuNGPINGE0YPQvdC60YbQuNC4INC+0LHQvtC70L7Rh9C60LggNzM8YnI+NS4yINCh0LjQvdGC0LXQtyDRhNGD0L3QutGG0LjQuCDQvtCx0L7Qu9C+0YfQutC4IDc0PGJyPjUuMyDQktGL0LfQvtCyINC+0LHQvtC70L7Rh9C60Lgg0YTRg9C90LrRhtC40LggNzQ8YnI+NS4zLjEg0JLQktCV0JTQldCd0JjQlSDQkiDQp9Cj0JDQnSDQmtCQ0J/QmNCi0JDQm9CY0JfQkNCm0JjQmCDQpNCj0J3QmtCm0JjQmCDQntCR0J7Qm9Ce0JTQkCA3NDxicj41LjMuMiDQktCy0LXQtNC10L3QuNC1INCyINCy0L7Qt9Cy0YDQsNGJ0LDQtdC80L7QtSDQt9C90LDRh9C10L3QuNC1INGE0YPQvdC60YbQuNC4INC+0LHQvtC70L7Rh9C60LggNzU8YnI+NS40INCf0YDQuNC80LXQvdC10L3QuNC1INGE0YPQvdC60YbQuNC4INC+0LHQvtC70L7Rh9C60Lgg0KTQsNC60YLQuNGH0LXRgdC60L7QtSDQsdC+0LkgNzU8YnI+NS40LjEg0JLRi9C30L7QstC40YLQtSDRhNGD0L3QutGG0LjRjiDQvtCx0L7Qu9C+0YfQutC4INCyINGB0YbQtdC90LDRgNC40LggNzU8YnI+NS40LjIg0LLQvtC30LLRgNCw0YnQsNC10LzQvtC1INC30L3QsNGH0LXQvdC40LUg0YTRg9C90LrRhtC40Lgg0L7QsdC+0LvQvtGH0LrQuCA3Nzxicj41LjQuMyDQn9Cw0YDQsNC80LXRgtGAINC80LXRgdGC0L7Qv9C+0LvQvtC20LXQvdC40Y8g0YTRg9C90LrRhtC40Lgg0L7QsdC+0LvQvtGH0LrQuCA3ODxicj41LjQuNCDQp9GD0LDQvdGB0LrQsNGPINC/0LDQtNCw0YbQuNGPIDc4INGE0YPQvdC60YbQuNC+0L3QsNC70YzQvdC+0Lkg0LzQsNGB0YHQuNCy0Ysg0L7QsdC+0LvQvtGH0LrQuCA3ODxicj41LjQuNSDQktC10YDQvdC+0LLRi9C1INCy0YvRhdC+0LTQvdGL0LUg0L/QtdGA0LXQvNC10L3QvdGL0LUg0LzQsNGB0YHQuNCy0Ysg0YTRg9C90LrRhtC40Lgg0L7QsdC+0LvQvtGH0LrQuCA3OTxicj41LjUg0KDQsNC30L3QuNGG0LAg0LzQtdC20LTRgyDQstGB0YLRgNC+0LXQvdC90L7QuSDQutC+0LzQsNC90LTQvtC5INC4INCy0L3QtdGI0L3QtdC5INC60L7QvNCw0L3QtNC+0LkgODA8YnI+NS42IFNoZWxsINCy0YHRgtGA0L7QtdC9IC3QkiDQutC+0LzQsNC90LTQtSA4MDxicj41LjYuMSDQoNCw0LfQvdC40YbQsCDQvNC10LbQtNGDINC/0LXRgNC10YDRi9Cy0L7QvCwg0L/RgNC+0LTQvtC70LbQtdC90LjQtdC8LCDQstC+0LfQstGA0LDRgtC+0Lwg0Lgg0LLRi9GF0L7QtNC+0Lwg0LIg0YHRgtGA0YPQutGC0YPRgNC1INC60YDQvtCy0L7QvtCx0YDQsNGJ0LXQvdC40Y8gODA8YnI+NS42LjIg0J/QtdGA0LXRgNGL0LIsINCf0YDQvtC00L7Qu9C20LjRgtGMLCDQlNC40LDQs9GA0LDQvNC80LAg0LLRi9C/0L7Qu9C90LXQvdC40Y8g0LrQvtC80LDQvdC00Ysg0LLRi9GF0L7QtNCwIDgxPGJyPjUuNi4zINCa0L7QvNCw0L3QtNCwIEJyZWFrINC4IENvbnRpbmF0ZSBDb21tYW5kIENhc2UgRmFjdGlvbiBDb21iYXQgODI8YnI+NS42LjQg0JrQvtC80LDQvdC00LAgU2hpZnQgODQ8YnI+NS43INCh0LLQvtC00LrQsCDRjdGC0L7QuSDQs9C70LDQstGLIDg0PGJyPjUuOCDQo9C/0YDQsNC20L3QtdC90LjQtSA4NTxicj7Qk9C70LDQstCwIDYg0KDQtdCz0YPQu9GP0YDQvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1IDg2PGJyPjYuMSDQmtC+0L3RhtC10L/RhtC40Y8g0YDQtdCz0YPQu9GP0YDQvdC+0LPQviDQstGL0YDQsNC20LXQvdC40Y8gODY8YnI+Ni4yIE1ldGEgTWV0YSBNZXRhIFN0aWNlcnMgODc8YnI+Ni4zINCT0YDQsNC80LzQsNGC0LjQutCwINGA0LXQs9GD0LvRj9GA0L3QvtCz0L4g0LLRi9GA0LDQttC10L3QuNGPIDg4PGJyPjYuNCDQodC40LzQstC+0LvRiyDQvtC/0LXRgNCw0YbQuNC4INGA0LXQs9GD0LvRj9GA0L3QvtCz0L4g0LLRi9GA0LDQttC10L3QuNGPINC/0YDQuNC+0YDQuNGC0LXRgiA4OTxicj42LjUg0J/RgNCw0LLQuNC70LAg0YHQvtC+0YLQstC10YLRgdGC0LLQuNGPINGA0LXQs9GD0LvRj9GA0L3QvtCz0L4g0LLRi9GA0LDQttC10L3QuNGPIDkwPGJyPjYuNS4xIEJhc2ljIE1vZGUgTWF0Y2ggOTA8YnI+Ni41LjIg0JrQu9Cw0YHRgtC10YAg0YHQuNC80LLQvtC70L7QsiA5MDxicj42LjYg0JPRgNC10L8g0LrQvtC80LDQvdC00LAgOTI8YnI+Ni42LjEg0JLQstC10LTQtdC90LjQtSDQsiDQutC+0LzQsNC90LTRgyBHUkVQIDkyPGJyPjYuNi4yINCk0L7RgNC80LDRgiDRgdC40L3RgtCw0LrRgdC40YHQsCDQutC+0LzQsNC90LTRiyBHUkVQIDkzPGJyPjYuNi4zINCa0LDQuiDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LrQvtC80LDQvdC00YMgR3JlcCA5Mzxicj42LjYuNCDQmtC+0LzQsNC90LTQsCBHUkVQINCyINGB0L7Rh9C10YLQsNC90LjQuCDRgSDRgNC10LPRg9C70Y/RgNC90YvQvCDQstGL0YDQsNC20LXQvdC40LXQvC4g0JjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LUgOTU8YnI+Ni42LjUg0JrQvtC80LDQvdC00LAgR1JFUCDQsiDRgdC+0YfQtdGC0LDQvdC40Lgg0YEg0YDQtdCz0YPQu9GP0YDQvdGL0LzQuCDRgdC70YPRh9Cw0Y/QvNC4INCy0YvRgNCw0LbQtdC90LjRjyDRhNCw0LrRgtC40YfQtdGB0LrQvtCz0L4g0LHQvtGPIDk3PGJyPjYuNyDQodCy0L7QtNC60LAg0Y3RgtC+0Lkg0LPQu9Cw0LLRiyAxMDA8YnI+Ni44INCj0L/RgNCw0LbQvdC10L3QuNC1IDEwMTxicj7Qk9C70LDQstCwIDcg0KDQtdC00LDQutGC0L7RgCDQv9C+0YLQvtC60LAgU0VEIDEwMjxicj430K3QtCDQv9GA0LjQvdGG0LjQvyDRgNCw0LHQvtGC0YsgMTAyPGJyPjcuMiBTRUQg0JPRgNCw0LzQvNCw0YLQuNGH0LXRgdC60LjQuSDRhNC+0YDQvNCw0YIg0Lgg0YXQsNGA0LDQutGC0LXRgNC40YHRgtC40LrQuCAxMDM8YnI+Ny4y0KTQvtGA0LzQsNGCINCz0YDQsNC80LzQsNGC0LjQutC4IEVEIDEwMzxicj43LjIuMiBTRUQg0LjQvdGE0L7RgNC80LjRgNGD0LXRgiAxMDQ8YnI+Ny4zIFNFRCDQmNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSAxMDQ8YnI+Ny40IFNFRCDQv9C+0LTQtNC10YDQttC40LLQsNC10YIg0YDQtdCz0YPQu9GP0YDQvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1IDEwNTxicj43LjUgU0VEIENhc2UgRmFjdGlvbiBCaWdodCAxMDg8YnI+Ny42INCh0LLQvtC00LrQsCDRjdGC0L7QuSDQs9C70LDQstGLIDExNDxicj43Ljcg0KPQv9GA0LDQttC90LXQvdC40LUgMTE0PGJyPtCT0LvQsNCy0LAgOCDQmNC90YHRgtGA0YPQvNC10L3RgiDQvtCx0YDQsNCx0L7RgtC60Lgg0YLQtdC60YHRgtCwIEFXSyAxMTY8YnI+OC4xIEFXSyDQktCS0JXQlNCV0J3QmNCVIDExNjxicj44LjIgQXdrIFdvcmtmbG93IDExNzxicj44LjMg0J/RgNC40L3RhtC40L8g0YDQsNCx0L7RgtGLINC/0L4g0YDQsNCx0L7RgtC1IDExNzxicj44LjQg0KTQvtGA0LzQsNGCINCz0YDQsNC80LzQsNGC0LjQutC4IEFXSyAxMTg8YnI+OC40LjEgQXdrIEJhc2ljIEdyYW1tYXIgRm9ybWF0IDExODxicj44LjQuMiDQrdC90LTQtdC90YEgMTE4INCh0LjQvdGC0LDQutGB0LjRgSBBV0suPGJyPjguNSBBV0sg0LLRgdGC0YDQvtC10L0gLdCSINC/0LXRgNC10LzQtdC90L3QvtC5IDEyMzxicj44LjYgQXdrIE1vZGUgMTI4PGJyPjguNyBBV0sgQ09STkFDVFMgMTMxPGJyPjguNy4xINCV0YHQu9C4INGD0YHQu9C+0LLQvdC+0LUg0YPRgtCy0LXRgNC20LTQtdC90LjQtSAxMzI8YnI+OC43LjIg0JIg0YLQviDQstGA0LXQvNGPINC60LDQuiDQv9C10YLQu9GPIDEzMzxicj44LjcuMyDQtNC70Y8g0L/QtdGC0LvQuCAxMzU8YnI+OC43LjQg0JrQvtC80LDQvdC00LAgQnJlYWssINC/0YDQvtC00L7Qu9C20LXQvdC40LUg0LrQvtC80LDQvdC00YssINC60L7QvNCw0L3QtNCwINCy0YvRhdC+0LTQsCAxMzY8YnI+OC43LjUg0LzQsNGB0YHQuNCyIDEzNzxicj44Ljgg0KTRg9C90LrRhtC40Y8g0LIgQXdrIDE0MTxicj44LjguMSBBV0sg0LLRgdGC0YDQvtC10L3QvdGL0LkgLdCSINGE0YPQvdC60YbQuNC4IDE0MTxicj44LjguMiBBd2sgQ3VzdG9tIEZ1bmN0aW9uIDE0Mjxicj44Ljkg0KDQtdC30Y7QvNC1INGN0YLQvtC5INCz0LvQsNCy0YsgMTQ0PGJyPjguMTAg0KPQv9GA0LDQttC90LXQvdC40LUgMTQ1PGJyPtCT0LvQsNCy0LAgOSDQodC40YHRgtC10LzQsCDQvNC+0LbQtdGCINC/0YDQvtCw0L3QsNC70LjQt9C40YDQvtCy0LDRgtGMIDE0Njxicj45LjEg0JjQvdGB0YLRgNGD0LzQtdC90YLRiyDQsNC90LDQu9C40LfQsCDQvtCx0YnQtdC5INGN0L3QtdGA0LPQuNC4IDE0Njxicj45LjEuMSDQmtC+0LzQsNC90LTQsCBWTVNUQVQgMTQ2PGJyPjkuMS4yIFNBUiDQodC40YHRgtC10LzQvdCw0Y8g0LrQvtC80LDQvdC00LAg0LTQuNGB0LrRgNC10YLQuNC30LDRhtC40LggMTQ5PGJyPjkuMS4zIElPU1RBVCDQvNC+0LbQtdGCINC/0YDQvtCw0L3QsNC70LjQt9C40YDQvtCy0LDRgtGMINC60L7QvNCw0L3QtNGDIDE1MDxicj45LjEuNCBUb3AgQ2FuIENhbiBNb25pdG9yIENvbW1pbmcgMTUyPGJyPjkuMS41IFBTINCg0LXQsNC70YzQvdCw0Y8g0YHQuNGB0YLQtdC80LAg0LzQvtC90LjRgtC+0YDQuNC90LPQsC48YnI+OS4xLjYg0KHRgtCw0YLRgyAt0LzQvtC90LjRgtC+0YAg0LrQvtC80LDQvdC00LAg0YHRgtCw0YLRg9GB0LAg0YHQtdGC0LggMTYwPGJyPjkuMS43IElmQ29uZmlnIFZpZXcgQWRkZXIgQ29tbWFuZCAxNjY8YnI+OS4xLjggU1Mg0JTQuNGB0L/Qu9C10Lkg0KHQvtC10LTQuNC90LXQvdC40LUg0JrQvtC80LDQvdC00LAg0KHQvtC10LTQuNC90LXQvdC40Y8gMTcwPGJyPjkuMS45INCa0L7QvNCw0L3QtNCwINC/0LDQvNGP0YLQuCDQsdC10YHQv9C70LDRgtC90L7Qs9C+INC+0YLQvtCx0YDQsNC20LXQvdC40Y8gMTc2PGJyPjkuMS4xMCBERiDQv9GA0L7RgdC80L7RgtGA0LXRgtGMINC00LjRgdC60L7QstGD0Y4g0LrQvtC80LDQvdC00YMg0LfQsNC90Y/RgtC40LkgMTc4PGJyPjkuMS4xMSBEU1RBVCDQlNC40L3QsNC80LjRh9C10YHQutCw0Y8g0YHQuNGB0YLQtdC80LAg0LTQuNGB0L/Qu9C10Y8g0JrQvtC80LDQvdC00LAg0LfQsNCz0YDRg9C30LrQuCAxODE8YnI+OS4xLjEyIElvdG9wIFZpZXcgSS9PINCa0L7QvNCw0L3QtNCwIDE4NDxicj45LjEuMTMgSWZ0b3AgUmVhbCAt0LLRgNC10LzQtdC90Lgg0LrQvtC80LDQvdC00LAg0LzQvtC90LjRgtC+0YDQuNC90LPQsCAxODU8YnI+OS4yINCh0YbQtdC90LDRgNC40Lkg0L/RgNC+0LjQt9Cy0L7QtNC40YLQtdC70YzQvdC+0YHRgtC4INGB0LjRgdGC0LXQvNC90L7Qs9C+INGA0LXRgdGD0YDRgdCwINC/0YDQvtC10LrRgtCwIDE4Nzxicj45LjMg0KDQtdC30Y7QvNC1INGN0YLQvtC5INCz0LvQsNCy0YsgMTk3PGJyPjkuNCDQo9C/0YDQsNC20L3QtdC90LjQtSAxOTc8YnI+0JPQu9Cw0LLQsCAxMCDQn9GA0L7QtdC60YIg0KTQsNC60YLQuNGH0LXRgdC60LjQuSDQsdC+0LkgMTk5PGJyPjEwLjEg0KHQtdGA0LLQtdGA0L3Ri9C5INGB0YbQtdC90LDRgNC40Lkg0YHRgtCw0YLRg9GB0LAuINCf0YDQvtC10LrRgiAxOTk8YnI+MTAuMiDQn9GA0L7QtdC60YIg0LDQvdCw0LvQuNC30LAg0LbRg9GA0L3QsNC70LAgTmdpbnggMjAxPGJyPjEwLjMg0J/RgNC+0LXQutGCINGB0LHQvtGA0LAg0LjQvdGE0L7RgNC80LDRhtC40LggWmFiYml4IDIwODxicj4xMC4zLjEgWmFiYml4IE1vbml0b3IgTW9uaXRvciBUQ1Ag0KHQsdC+0YAg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0YHQvtGB0YLQvtGP0L3QuNC4IDIwODxicj4xMC4zLjIgWmFiYml4IE1vbml0b3IgTW9uaXRvciBNeVNRTCDQodCx0L7RgCDQuNC90YTQvtGA0LzQsNGG0LjQuCDQviDRgdGC0LDRgtGD0YHQtSAyMTA8YnI+MTAuMy4zINCX0LDQsdC+0YAg0LjQvdGE0L7RgNC80LDRhtC40Lgg0L4g0L/QsNC80Y/RgtC4IFphYmJpeCAyMTM8YnI+MTAuNCBNdWx0aSAtTWFjaGluZSBEZXBsb3ltZW50IE15U1FMIERhdGFiYXNlIFByb2plY3QgMjE0PGJyPjEwLjUgTXVsdGkgLU1hY2hpbmUg0YDQsNC30LLQtdGA0YLRi9Cy0LDQvdC40LUgTE5NUCBQcm9qZWN0IDIxNjxicj4xMC42INCg0LXQt9GO0LzQtSDRjdGC0L7QuSDQs9C70LDQstGLIDIxODxicj4xMC43INCj0L/RgNCw0LbQvdC10L3QuNC1IDIxODwvZGl2PjxpbWcgY2xhc3M9ImRlc2NfYW5jaG9yIiBpZD0iZGVzYy1tb2R1bGUtMyIgc3JjPSJodHRwOi8vYXNzZXRzLmFsaWNkbi5jb20va2lzc3kvMS4wLjAvYnVpbGQvaW1nbGF6eWxvYWQvc3BhY2ViYWxsLmdpZiI+PGRpdj48ZGl2PjxzdHJvbmc+0JLQstC10LTQtdC90LjQtTwvc3Ryb25nPjwvZGl2PjxkaXY+ICAgICAmbmJzcDsgICAgPC9kaXY+PC9kaXY+PGRpdj7QrdGC0LAg0LrQvdC40LPQsCDQsiDQvtGB0L3QvtCy0L3QvtC8INC+0LHRitGP0YHQvdGP0LXRgiDRgdC+0L7RgtCy0LXRgtGB0YLQstGD0Y7RidC10LUg0YHQvtC00LXRgNC20LDQvdC40LUg0L/RgNC+0LPRgNCw0LzQvNC40YDQvtCy0LDQvdC40Y8gU2hlbGwu0JIg0Y3RgtC+0Lkg0LrQvdC40LPQtSAxMCDQs9C70LDQstGLINCy0LrQu9GO0YfQsNGO0YIg0LjRgdC/0L7Qu9GM0LfQvtCy0LDQvdC40LUgU0hETCwg0YLQtdGB0YIg0L3QsCDRg9GB0LvQvtCy0LjRjyDQvtCx0L7Qu9C+0YfQutC4LCDRhtC40LrQuyDQvtCx0L7Qu9C+0YfQutC4LCDQvNCw0YHRgdC40LIg0L7QsdC+0LvQvtGH0LrQuCwg0L/RgNC+0LPRgNCw0LzQvNC40YDQvtCy0LDQvdC40LUg0L7QsdC+0LvQvtGH0LrQuCwg0YTRg9C90LrRhtC40L7QvdCw0LvRjNC90L7QtSDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSwg0YDQtdCz0YPQu9GP0YDQvdC+0LUg0LLRi9GA0LDQttC10L3QuNC1LCDRgNC10LTQsNC60YLQvtGAINC/0L7RgtC+0LrQsCBTRUQsINC40L3RgdGC0YDRg9C80LXQvdGC0Ysg0L7QsdGA0LDQsdC+0YLQutC4INGC0LXQutGB0YLQsCBBV0ssINGB0LjRgdGC0LXQvNCwINC80L7QttC10YIg0LDQvdCw0LvQuNC30LjRgNC+0LLQsNGC0Ywg0Lgg0L/RgNC+0LXQutGC0LjRgNC+0LLQsNGC0Ywg0YTQsNC60YLQuNGH0LXRgdC60LjQtSDQsdC+0LXQstGL0LUg0L3QsNCx0L7RgNGLLtCt0YLQsCDQutC90LjQs9CwINC+0LHRitGP0YHQvdGP0LXRgiDQvNC90L7Qs9C40LUg0L/RgNC+0LXQutGC0L3Ri9C1INC+0L/QtdGA0LDRhtC40Lgg0Lgg0YPRgtC+0YfQvdGP0LXRgiDQvtC/0LXRgNCw0YLQuNCy0L3Ri9C1INGI0LDQs9C4LCDRh9GC0L7QsdGLINC/0L7QvNC+0YfRjCDQvdC+0LLQuNGH0LrQsNC8INC/0L7QvdGP0YLRjCDQuNGB0L/QvtC70YzQt9C+0LLQsNC90LjQtSDRhNCw0LfQvtCy0L7QuSDRjdC90LXRgNCz0LjQuC7QrdGC0LAg0LrQvdC40LPQsCDQvNC+0LbQtdGCINC40YHQv9C+0LvRjNC30L7QstCw0YLRjNGB0Y8g0LIg0LrQsNGH0LXRgdGC0LLQtSDRg9GH0LXQsdC90LjQutCwINC00LvRjyDQvtCx0YvRh9C90YvRhSDRg9C90LjQstC10YDRgdC40YLQtdGC0L7QsiDQuNC70Lgg0YPRh9C10LHQvdGL0YUg0YjQutC+0LssINC40LvQuCDQtdC1INGC0LDQutC20LUg0LzQvtC20L3QviDQuNGB0L/QvtC70YzQt9C+0LLQsNGC0Ywg0LIg0LrQsNGH0LXRgdGC0LLQtSDRgdC/0YDQsNCy0L7Rh9C90LjQutCwINC00LvRjyDRgNCw0LfRgNCw0LHQvtGC0YfQuNC60L7QsiDQvtCx0LvQsNGH0L3Ri9GFINCy0YvRh9C40YHQu9C10L3QuNC5LjwvZGl2PjxpbWcgY2xhc3M9ImRlc2NfYW5jaG9yIiBpZD0iZGVzYy1tb2R1bGUtNCIgc3JjPSJodHRwOi8vYXNzZXRzLmFsaWNkbi5jb20va2lzc3kvMS4wLjAvYnVpbGQvaW1nbGF6eWxvYWQvc3BhY2ViYWxsLmdpZiI+PGRpdj48ZGl2PjxzdHJvbmc+0KfRgtC10L3QuNC1INCyINCY0L3RgtC10YDQvdC10YLQtTwvc3Ryb25nPjwvZGl2PjxkaXY+ICAgICAmbmJzcDsgICAgPC9kaXY+PC9kaXY+PGRpdj48L2Rpdj48aW1nIGNsYXNzPSJkZXNjX2FuY2hvciIgaWQ9ImRlc2MtbW9kdWxlLTUiIHNyYz0iaHR0cDovL2Fzc2V0cy5hbGljZG4uY29tL2tpc3N5LzEuMC4wL2J1aWxkL2ltZ2xhenlsb2FkL3NwYWNlYmFsbC5naWYiPjxkaXY+PGRpdj48c3Ryb25nPtCh0JzQmCDQvtCx0LfQvtGAPC9zdHJvbmc+PC9kaXY+PGRpdj4gICAgICZuYnNwOyAgICA8L2Rpdj48L2Rpdj48ZGl2PjEuINCa0L3QuNCz0LAg0L/RgNCw0LrRgtC40YfQvdCw0Y8g0Lgg0LrQsNGA0LzQsC48YnI+Mi4g0JLRgdC1INC30L3QsNC90LjRjywg0L7RhdCy0LDRgtGL0LLQsNGO0YnQuNC1INCy0LXRgdGMINC/0YDQvtGG0LXRgdGBINC+0YIg0L/RgNC10LTRi9C00YPRidC10LPQviDQtNC40LfQsNC50L3QsCDQtNC+INC60L7QvdGG0LAuPGJyPjMuINCY0LfQsdC10LPQsNC50YLQtSDRgtC10L7RgNC40Lgg0YHQu9C10L/Ri9GFINC+0LHRitGP0YHQvdC10L3QuNC5INC4INC+0LHRitGP0YHQvdC40YLQtSDRgSDRhNCw0LrRgtC40YfQtdGB0LrQuNC8INCx0L7QtdC8Ljxicj40LiDQkdC+0LPQsNGC0YvQtSDQstGB0L/QvtC80L7Qs9Cw0YLQtdC70YzQvdGL0LUg0YDQtdGB0YPRgNGB0Ysg0LfQsNGC0YDRg9C00L3Rj9GO0YIg0L7QsdGD0YfQtdC90LjQtSDQsdC+0LvRjNGI0LUg0L3QtSDRgdC70L7QttC90L4uPGJyPjEuINCa0L3QuNCz0LAg0L/RgNCw0LrRgtC40YfQvdCw0Y8g0Lgg0LrQsNGA0LzQsC4yLiDQktGB0LUg0LfQvdCw0L3QuNGPLCDQvtGF0LLQsNGC0YvQstCw0Y7RidC40LUg0LLQtdGB0Ywg0L/RgNC+0YbQtdGB0YEg0L7RgiDQv9GA0LXQtNGL0LTRg9GJ0LXQs9C+INC/0YDQvtC10LrRgtCwINC00L4g0LrQvtC90YbQsCDRgNC10LDQu9C40LfQsNGG0LjQuC4zLiDQmNC30LHQtdCz0LDQudGC0LUg0YLQtdC+0YDQuNC4INGB0LvQtdC/0YvRhSDQvtCx0YrRj9GB0L3QtdC90LjQuSDQuCDQvtCx0YrRj9GB0L3QuNGC0LUg0YEg0YTQsNC60YLQuNGH0LXRgdC60LjQvCDQsdC+0LXQvC40LiDQkdC+0LPQsNGC0YvQtSDQstGB0L/QvtC80L7Qs9Cw0YLQtdC70YzQvdGL0LUg0YDQtdGB0YPRgNGB0Ysg0LfQsNGC0YDRg9C00L3Rj9GO0YIg0L7QsdGD0YfQtdC90LjQtSDQsdC+0LvRjNGI0LUg0L3QtSDRgdC70L7QttC90L4uPC9kaXY+PGltZyBzcmM9Imh0dHBzOi8vd3d3Lm8wYi5jbi9pLnBocD90LnBuZyZyaWQ9Z3ctMy42M2QxMjY5YWU2YjBhJnA9Mjk5MDQ5NzA4MSZrPWVyY2UyJnQ9MTY3NDY1MTI5MiIgc3R5bGU9ImRpc3BsYXk6bm9uZSI+
Продавец:古韵墨香图书专营店
Адрес:Пекин
Рейтинг:
Всего отзывов:0
Положительных:0
Добавить в корзину
- Информация о товаре
- Фотографии
Основная информация
Заголовок: | Автоматическая эксплуатация и обслуживание Linux Shell (версия класса MU) |
Автор: | Qianfeng Education Education High Education Product Product Decorption |
Издательство: | Люди после прессы |
Дата публикации: | 2019-04-01 |
Версия: | 1 версия один раз |
ISBN: | 9787115533241 |
Рыночная цена: | 49.8 |
Оглавление
Глава 1 Получите известность оболочке 1
1.1 Как подключить пользователей и ядра 1
1.2 Shell подключает другие программы 2
1.3 Shell также поддерживает программирование 2
1.4 Shell - это язык сценария 3
1.5 Различные версии Shell 3 3
1.5.1 Bourne Shell 4
1.5.2 C Shell 4
1.5.3 Bash Shell 4
1.5.4 Просмотр Shell версии 4
1.6 Shell - это навык работы и технического обслуживания 5
1.7 Определение переменных оболочки 7
1.8 Тип переменной оболочки 7
1.8.1 Пользовательская переменная 7
1.8.2 переменная среды 8
1.8.3 Переменная позиция 9
1.8.4 Предварительная переменная 9
1.9 Назначение переменных оболочки 10
1.9.1 Прямое назначение 10
1.9.2 Читать с клавиатуры и назначить значение 10
1.9.3 Используйте параметры командной строки для назначения 11
1.9.4 Используйте выход команды, чтобы назначить результат 11
1.9.5 Прочтите назначение данных из файла 12
1.10 Операция переменной оболочки 13
1.10.1 Expr Многочисленные забавные заказы 13
1.10.2 "((((()))" или "[]".
1.10.3 Пусть численные порядок Ling 14
1.10.4 Десятичная операция Shell 14
1.11 Удалить, заменить и заменить переменные оболочки 14
1.11.1 Удалить переменную оболочки 14
1.11.2 Замена переменной оболочки 15
1.11.3 Замена переменной оболочки 16
1,12 Переменная оболочка самостоятельно 16
1.13 Специальные символы в переменных оболочки 17
1.14 Резюме этой главы 21
1.15 Упражнение 21
Глава 2 Тест на состояние оболочки 23
2.1 Операторы испытаний на условие в оболочке 23
2.1.1 Тест файла 23
2.1.2 Integer Test 24
2.1.3 Тест строки 25
2.1.4 Логический оператор 26
2.2 Если утверждение условия 27
2.2.1 Если отдельная ветвь 27
2.2.2 Если двойная ветвь 27
2.2.3, если много -ябранное 28
2.2.4 Если конфигурация оператора YUM Источник фактического боевого скрипта 29
2.3 Заявление о условии случая 30
2.4 Условие условия, борьба с делом.
2.4.1 Дело Удалить решение пользователя 31
2.4.2. Реализация использования системного набора инструментов 32
2.4.3 Реализация корпуса Jumpserver 33
2.4.4 Реализация нескольких версий установки PHP 35
2.5 Сводка этой главы 37
2.6 Упражнение 37
ГЛАВА 3 СВОИЙ ПИТАН 39
3.1 Для круговой грамматической структуры 39
3.2 Для круговой речи борьбы 40
3.2.1 Для оператора цикла для достижения обнаружения PING PANG PACT
3.2.2 Для оператора цикла для достижения партийного создания пользователей 41
3.2.3 Для оператора цикла для реализации пользователей партий в файле для создания 42
3.3 Ожидайте интерактивного открытого ключа Push 43
3.3.1 Ожидается, что реализует неинтеректирование 43
3.3.2 Ожидайте реализации неинтактирующих файл передачи 44
3.3.3 Ожидайте реализует пакетный хост общедоступного ключа Push 45
3.3.4 для оператора цикла, чтобы реализовать изменение пароля партии хоста 48
3.3.5 Для оператора цикла для достижения пакетного удаленного хоста конфигурация SSH 49
3.4 во время петли и до цикла 50
3.4.1 В то время как круговая круговая структура грамматики 51
3.4.2 До циклического синтаксического грамматической структуры 51
3.5 Спекен Спекен борьба 51
3.5.1. При предложении цикла для достижения партийного создания пользователей 51
3.5.2 При операции по циклом и до тестирования велосипедного предложения удаленное соединение хоста 52
3.5.3 для, пока, до Duel 53
3.6 Управление оборудованием оборудования 55
3.6.1 для цикла для реализации одновременного управления оболочкой 55
3.6.2 для фонового цикла, чтобы реализовать параллельный контроль оболочки 56
3.7 Фактическая борьба с одновременными контрольными случаями оболочки 56
3.7.1 для цикла, чтобы реализовать фактическую борьбу с параллельным управлением корпуса Shell 56
3.7.2 Для фонового цикла, чтобы реализовать фактическую борьбу с параллельным управлением корпуса Shell 57
3.7.3 Linux Pipeline реализует фактическую борьбу с одновременным управлением корпуса Shell 58
3.8 Резюме этой главы 59
3.9 Упражнение 60
Глава 4 Массив Shell 61
4.1 Основная концепция массива Shell 61
4.2 типа массива Shell 61
4.2.1 Обычный массив 62
4.2.2 Асвязанный массив 62
4.2.3 Определите тип массива 62
4.3 Определение массива оболочки 62
4.3.1 Непосредственное определение массива 63
4.3.2 Определить массив определения 63
4.3.3 Массив 63 непрямого определения 63
4.3.4 Прочитайте массив определений из файла 64
4.4 Переход и назначение массива Shell 64
4.4.1 Общий доступ к массиву Shell 64
4.4.2, пока петля, чтобы реализовать обход на массиве Shell 65
4.4.3 Для цикла, чтобы реализовать обход матрицы оболочек 66
4.4.4 Назначение массива Shell 66
4.4.5 Удалить массив Shell 67
4.4.6. Перехват и замена массива Shell 67
4.5 Скрипт массивов оболочки Фактический бой 68
4.5.1 Реализация массива массива не статистика 68
4.5.2 Статистика массива массива Количество различных типов оболочки 69
4.5.3 Статистика массива массива TCP Соединение 70
4.6 Сводка этой главы 71
4.7 Упражнение 71
Глава 5 Использование функции в программировании Shell 73
5.1 Концепция функции оболочки 73
5.2 Синтез функции оболочки 74
5.3 Вызов оболочки функции 74
5.3.1 ВВЕДЕНИЕ В ЧУАН КАПИТАЛИЗАЦИИ ФУНКЦИИ ОБОЛОДА 74
5.3.2 Введение в возвращаемое значение функции оболочки 75
5.4 Применение функции оболочки Фактическое бой 75
5.4.1 Вызовите функцию оболочки в сценарии 75
5.4.2 возвращаемое значение функции оболочки 77
5.4.3 Параметр местоположения функции оболочки 78
5.4.4 Чуанская падация 78 функциональной массивы оболочки 78
5.4.5 Верновые выходные переменные массивы функции оболочки 79
5.5 Разница между встроенной командой и внешней командой 80
5.6 Shell встроен -В команде 80
5.6.1 Разница между перерывом, продолжением, возвратом и выходом в структуре кровообращения 80
5.6.2 Перерыв, Продолжить, Диаграмма выполнения команды выхода 81
5.6.3 Команда Break и Continate Command Case Faction Combat 82
5.6.4 Команда Shift 84
5.7 Сводка этой главы 84
5.8 Упражнение 85
Глава 6 Регулярное выражение 86
6.1 Концепция регулярного выражения 86
6.2 Meta Meta Meta Sticers 87
6.3 Грамматика регулярного выражения 88
6.4 Символы операции регулярного выражения приоритет 89
6.5 Правила соответствия регулярного выражения 90
6.5.1 Basic Mode Match 90
6.5.2 Кластер символов 90
6.6 Греп команда 92
6.6.1 Введение в команду GREP 92
6.6.2 Формат синтаксиса команды GREP 93
6.6.3 Как использовать команду Grep 93
6.6.4 Команда GREP в сочетании с регулярным выражением. Использование 95
6.6.5 Команда GREP в сочетании с регулярными случаями выражения фактического боя 97
6.7 Сводка этой главы 100
6.8 Упражнение 101
Глава 7 Редактор потока SED 102
7Эд принцип работы 102
7.2 SED Грамматический формат и характеристики 103
7.2Формат грамматики ED 103
7.2.2 SED информирует 104
7.3 SED Использование 104
7.4 SED поддерживает регулярное выражение 105
7.5 SED Case Faction Bight 108
7.6 Сводка этой главы 114
7.7 Упражнение 114
Глава 8 Инструмент обработки текста AWK 116
8.1 AWK ВВЕДЕНИЕ 116
8.2 Awk Workflow 117
8.3 Принцип работы по работе 117
8.4 Формат грамматики AWK 118
8.4.1 Awk Basic Grammar Format 118
8.4.2 Энденс 118 Синтаксис AWK.
8.5 AWK встроен -В переменной 123
8.6 Awk Mode 128
8.7 AWK CORNACTS 131
8.7.1 Если условное утверждение 132
8.7.2 В то время как петля 133
8.7.3 для петли 135
8.7.4 Команда Break, продолжение команды, команда выхода 136
8.7.5 массив 137
8.8 Функция в Awk 141
8.8.1 AWK встроенный -В функции 141
8.8.2 Awk Custom Function 142
8.9 Резюме этой главы 144
8.10 Упражнение 145
Глава 9 Система может проанализировать 146
9.1 Инструменты анализа общей энергии 146
9.1.1 Команда VMSTAT 146
9.1.2 SAR Системная команда дискретизации 149
9.1.3 IOSTAT может проанализировать команду 150
9.1.4 Top Can Can Monitor Comming 152
9.1.5 PS Реальная система мониторинга.
9.1.6 Стату -монитор команда статуса сети 160
9.1.7 IfConfig View Adder Command 166
9.1.8 SS Дисплей Соединение Команда Соединения 170
9.1.9 Команда памяти бесплатного отображения 176
9.1.10 DF просмотреть дисковую команду занятий 178
9.1.11 DSTAT Динамическая система дисплея Команда загрузки 181
9.1.12 Iotop View I/O Команда 184
9.1.13 Iftop Real -времени команда мониторинга 185
9.2 Сценарий производительности системного ресурса проекта 187
9.3 Резюме этой главы 197
9.4 Упражнение 197
Глава 10 Проект Фактический бой 199
10.1 Серверный сценарий статуса. Проект 199
10.2 Проект анализа журнала Nginx 201
10.3 Проект сбора информации Zabbix 208
10.3.1 Zabbix Monitor Monitor TCP Сбор информации о состоянии 208
10.3.2 Zabbix Monitor Monitor MySQL Сбор информации о статусе 210
10.3.3 Забор информации о памяти Zabbix 213
10.4 Multi -Machine Deployment MySQL Database Project 214
10.5 Multi -Machine развертывание LNMP Project 216
10.6 Резюме этой главы 218
10.7 Упражнение 218
1.1 Как подключить пользователей и ядра 1
1.2 Shell подключает другие программы 2
1.3 Shell также поддерживает программирование 2
1.4 Shell - это язык сценария 3
1.5 Различные версии Shell 3 3
1.5.1 Bourne Shell 4
1.5.2 C Shell 4
1.5.3 Bash Shell 4
1.5.4 Просмотр Shell версии 4
1.6 Shell - это навык работы и технического обслуживания 5
1.7 Определение переменных оболочки 7
1.8 Тип переменной оболочки 7
1.8.1 Пользовательская переменная 7
1.8.2 переменная среды 8
1.8.3 Переменная позиция 9
1.8.4 Предварительная переменная 9
1.9 Назначение переменных оболочки 10
1.9.1 Прямое назначение 10
1.9.2 Читать с клавиатуры и назначить значение 10
1.9.3 Используйте параметры командной строки для назначения 11
1.9.4 Используйте выход команды, чтобы назначить результат 11
1.9.5 Прочтите назначение данных из файла 12
1.10 Операция переменной оболочки 13
1.10.1 Expr Многочисленные забавные заказы 13
1.10.2 "((((()))" или "[]".
1.10.3 Пусть численные порядок Ling 14
1.10.4 Десятичная операция Shell 14
1.11 Удалить, заменить и заменить переменные оболочки 14
1.11.1 Удалить переменную оболочки 14
1.11.2 Замена переменной оболочки 15
1.11.3 Замена переменной оболочки 16
1,12 Переменная оболочка самостоятельно 16
1.13 Специальные символы в переменных оболочки 17
1.14 Резюме этой главы 21
1.15 Упражнение 21
Глава 2 Тест на состояние оболочки 23
2.1 Операторы испытаний на условие в оболочке 23
2.1.1 Тест файла 23
2.1.2 Integer Test 24
2.1.3 Тест строки 25
2.1.4 Логический оператор 26
2.2 Если утверждение условия 27
2.2.1 Если отдельная ветвь 27
2.2.2 Если двойная ветвь 27
2.2.3, если много -ябранное 28
2.2.4 Если конфигурация оператора YUM Источник фактического боевого скрипта 29
2.3 Заявление о условии случая 30
2.4 Условие условия, борьба с делом.
2.4.1 Дело Удалить решение пользователя 31
2.4.2. Реализация использования системного набора инструментов 32
2.4.3 Реализация корпуса Jumpserver 33
2.4.4 Реализация нескольких версий установки PHP 35
2.5 Сводка этой главы 37
2.6 Упражнение 37
ГЛАВА 3 СВОИЙ ПИТАН 39
3.1 Для круговой грамматической структуры 39
3.2 Для круговой речи борьбы 40
3.2.1 Для оператора цикла для достижения обнаружения PING PANG PACT
3.2.2 Для оператора цикла для достижения партийного создания пользователей 41
3.2.3 Для оператора цикла для реализации пользователей партий в файле для создания 42
3.3 Ожидайте интерактивного открытого ключа Push 43
3.3.1 Ожидается, что реализует неинтеректирование 43
3.3.2 Ожидайте реализации неинтактирующих файл передачи 44
3.3.3 Ожидайте реализует пакетный хост общедоступного ключа Push 45
3.3.4 для оператора цикла, чтобы реализовать изменение пароля партии хоста 48
3.3.5 Для оператора цикла для достижения пакетного удаленного хоста конфигурация SSH 49
3.4 во время петли и до цикла 50
3.4.1 В то время как круговая круговая структура грамматики 51
3.4.2 До циклического синтаксического грамматической структуры 51
3.5 Спекен Спекен борьба 51
3.5.1. При предложении цикла для достижения партийного создания пользователей 51
3.5.2 При операции по циклом и до тестирования велосипедного предложения удаленное соединение хоста 52
3.5.3 для, пока, до Duel 53
3.6 Управление оборудованием оборудования 55
3.6.1 для цикла для реализации одновременного управления оболочкой 55
3.6.2 для фонового цикла, чтобы реализовать параллельный контроль оболочки 56
3.7 Фактическая борьба с одновременными контрольными случаями оболочки 56
3.7.1 для цикла, чтобы реализовать фактическую борьбу с параллельным управлением корпуса Shell 56
3.7.2 Для фонового цикла, чтобы реализовать фактическую борьбу с параллельным управлением корпуса Shell 57
3.7.3 Linux Pipeline реализует фактическую борьбу с одновременным управлением корпуса Shell 58
3.8 Резюме этой главы 59
3.9 Упражнение 60
Глава 4 Массив Shell 61
4.1 Основная концепция массива Shell 61
4.2 типа массива Shell 61
4.2.1 Обычный массив 62
4.2.2 Асвязанный массив 62
4.2.3 Определите тип массива 62
4.3 Определение массива оболочки 62
4.3.1 Непосредственное определение массива 63
4.3.2 Определить массив определения 63
4.3.3 Массив 63 непрямого определения 63
4.3.4 Прочитайте массив определений из файла 64
4.4 Переход и назначение массива Shell 64
4.4.1 Общий доступ к массиву Shell 64
4.4.2, пока петля, чтобы реализовать обход на массиве Shell 65
4.4.3 Для цикла, чтобы реализовать обход матрицы оболочек 66
4.4.4 Назначение массива Shell 66
4.4.5 Удалить массив Shell 67
4.4.6. Перехват и замена массива Shell 67
4.5 Скрипт массивов оболочки Фактический бой 68
4.5.1 Реализация массива массива не статистика 68
4.5.2 Статистика массива массива Количество различных типов оболочки 69
4.5.3 Статистика массива массива TCP Соединение 70
4.6 Сводка этой главы 71
4.7 Упражнение 71
Глава 5 Использование функции в программировании Shell 73
5.1 Концепция функции оболочки 73
5.2 Синтез функции оболочки 74
5.3 Вызов оболочки функции 74
5.3.1 ВВЕДЕНИЕ В ЧУАН КАПИТАЛИЗАЦИИ ФУНКЦИИ ОБОЛОДА 74
5.3.2 Введение в возвращаемое значение функции оболочки 75
5.4 Применение функции оболочки Фактическое бой 75
5.4.1 Вызовите функцию оболочки в сценарии 75
5.4.2 возвращаемое значение функции оболочки 77
5.4.3 Параметр местоположения функции оболочки 78
5.4.4 Чуанская падация 78 функциональной массивы оболочки 78
5.4.5 Верновые выходные переменные массивы функции оболочки 79
5.5 Разница между встроенной командой и внешней командой 80
5.6 Shell встроен -В команде 80
5.6.1 Разница между перерывом, продолжением, возвратом и выходом в структуре кровообращения 80
5.6.2 Перерыв, Продолжить, Диаграмма выполнения команды выхода 81
5.6.3 Команда Break и Continate Command Case Faction Combat 82
5.6.4 Команда Shift 84
5.7 Сводка этой главы 84
5.8 Упражнение 85
Глава 6 Регулярное выражение 86
6.1 Концепция регулярного выражения 86
6.2 Meta Meta Meta Sticers 87
6.3 Грамматика регулярного выражения 88
6.4 Символы операции регулярного выражения приоритет 89
6.5 Правила соответствия регулярного выражения 90
6.5.1 Basic Mode Match 90
6.5.2 Кластер символов 90
6.6 Греп команда 92
6.6.1 Введение в команду GREP 92
6.6.2 Формат синтаксиса команды GREP 93
6.6.3 Как использовать команду Grep 93
6.6.4 Команда GREP в сочетании с регулярным выражением. Использование 95
6.6.5 Команда GREP в сочетании с регулярными случаями выражения фактического боя 97
6.7 Сводка этой главы 100
6.8 Упражнение 101
Глава 7 Редактор потока SED 102
7Эд принцип работы 102
7.2 SED Грамматический формат и характеристики 103
7.2Формат грамматики ED 103
7.2.2 SED информирует 104
7.3 SED Использование 104
7.4 SED поддерживает регулярное выражение 105
7.5 SED Case Faction Bight 108
7.6 Сводка этой главы 114
7.7 Упражнение 114
Глава 8 Инструмент обработки текста AWK 116
8.1 AWK ВВЕДЕНИЕ 116
8.2 Awk Workflow 117
8.3 Принцип работы по работе 117
8.4 Формат грамматики AWK 118
8.4.1 Awk Basic Grammar Format 118
8.4.2 Энденс 118 Синтаксис AWK.
8.5 AWK встроен -В переменной 123
8.6 Awk Mode 128
8.7 AWK CORNACTS 131
8.7.1 Если условное утверждение 132
8.7.2 В то время как петля 133
8.7.3 для петли 135
8.7.4 Команда Break, продолжение команды, команда выхода 136
8.7.5 массив 137
8.8 Функция в Awk 141
8.8.1 AWK встроенный -В функции 141
8.8.2 Awk Custom Function 142
8.9 Резюме этой главы 144
8.10 Упражнение 145
Глава 9 Система может проанализировать 146
9.1 Инструменты анализа общей энергии 146
9.1.1 Команда VMSTAT 146
9.1.2 SAR Системная команда дискретизации 149
9.1.3 IOSTAT может проанализировать команду 150
9.1.4 Top Can Can Monitor Comming 152
9.1.5 PS Реальная система мониторинга.
9.1.6 Стату -монитор команда статуса сети 160
9.1.7 IfConfig View Adder Command 166
9.1.8 SS Дисплей Соединение Команда Соединения 170
9.1.9 Команда памяти бесплатного отображения 176
9.1.10 DF просмотреть дисковую команду занятий 178
9.1.11 DSTAT Динамическая система дисплея Команда загрузки 181
9.1.12 Iotop View I/O Команда 184
9.1.13 Iftop Real -времени команда мониторинга 185
9.2 Сценарий производительности системного ресурса проекта 187
9.3 Резюме этой главы 197
9.4 Упражнение 197
Глава 10 Проект Фактический бой 199
10.1 Серверный сценарий статуса. Проект 199
10.2 Проект анализа журнала Nginx 201
10.3 Проект сбора информации Zabbix 208
10.3.1 Zabbix Monitor Monitor TCP Сбор информации о состоянии 208
10.3.2 Zabbix Monitor Monitor MySQL Сбор информации о статусе 210
10.3.3 Забор информации о памяти Zabbix 213
10.4 Multi -Machine Deployment MySQL Database Project 214
10.5 Multi -Machine развертывание LNMP Project 216
10.6 Резюме этой главы 218
10.7 Упражнение 218
Введение
Эта книга в основном объясняет соответствующее содержание программирования Shell.В этой книге 10 главы включают использование SHDL, тест на условия оболочки, цикл оболочки, массив оболочки, программирование оболочки, функциональное использование, регулярное выражение, редактор потока SED, инструменты обработки текста AWK, система может анализировать и проектировать фактические боевые наборы.Эта книга объясняет многие проектные операции и уточняет оперативные шаги, чтобы помочь новичкам понять использование фазовой энергии.Эта книга может использоваться в качестве учебника для обычных университетов или учебных школ, или ее также можно использовать в качестве справочника для разработчиков облачных вычислений.
Чтение в Интернете
СМИ обзор
1. Книга практичная и карма.
2. Все знания, охватывающие весь процесс от предыдущего дизайна до конца.
3. Избегайте теории слепых объяснений и объясните с фактическим боем.
4. Богатые вспомогательные ресурсы затрудняют обучение больше не сложно.
1. Книга практичная и карма.2. Все знания, охватывающие весь процесс от предыдущего проекта до конца реализации.3. Избегайте теории слепых объяснений и объясните с фактическим боем.4. Богатые вспомогательные ресурсы затрудняют обучение больше не сложно.
2. Все знания, охватывающие весь процесс от предыдущего дизайна до конца.
3. Избегайте теории слепых объяснений и объясните с фактическим боем.
4. Богатые вспомогательные ресурсы затрудняют обучение больше не сложно.
1. Книга практичная и карма.2. Все знания, охватывающие весь процесс от предыдущего проекта до конца реализации.3. Избегайте теории слепых объяснений и объясните с фактическим боем.4. Богатые вспомогательные ресурсы затрудняют обучение больше не сложно.