成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

流行Linux和Windows腳本語言列表

系統
具備腳本知識的系統管理員與其他系統管理員有著明顯的區別。腳本是一門“系統管理員”創造的藝術。這門藝術需要了解系統本身的相關知識,系統管理命令的語法,編程和算法知識以及至少一門腳本編程語言。本文中,我們只會關注那些用作系統管理的腳本語言。

具備腳本知識的系統管理員與其他系統管理員有著明顯的區別。腳本是一門“系統管理員”創造的藝術。這門藝術需要了解系統本身的相關知識,系統管理命令的語法,編程和算法知識以及至少一門腳本編程語言。對系統管理員來說編寫腳本有很多選擇,每種腳本語言都有著自己獨特的語法和優點。腳本語言之間幾乎沒有相似之處,但也不會像外星語那樣難以讀懂。腳本語言既可用來管理系統,也可以用做Web開發。基于服務端和基于客戶端的腳本語言很少。客戶端腳本語言大多數用來在瀏覽器里顯示內容以及與用戶進行交互。服務器端腳本語言通常用來管理系統或Web服務。本文中,我們只會關注那些用作系統管理的腳本語言。讓我們開始吧!

關于腳本應該知道的事情

  • 腳本應該可以作為獨立的命令執行,或者可以在終端命令行接口下使用腳本語言的二進制文件調用。
  • 如果是可執行腳本,應該在開頭寫出下面這行特殊的代碼:
  1. #!/path/of/the/cli 

例如bash

  1. #!/bin/bash 

或者perl

  1. #!/usr/bin/perl 

‘#!’這個符號代表了執行該腳本需要調用的程序。

Bash

在Linux和UNIX世界里,bash腳本的數量最多。正如我們在很多文章中提到的那樣,bash也是最受到大家喜愛的。基本上,bash是一個具有解釋功能的命令行shell。它能夠用作編程并且滿足大多數的基本編程需求。在使用變量之前無需聲明,也不需要知道變量的類型。它的缺點在于,使用bash沒有其他的庫可以利用。你可以使用的只有/bin/bash(或/bin/sh)。當你聲明一個變量時,你無需在前面使用$符號,但是在使用時你需要在前面加上$表明它是一個“變量”。bash非常容易編寫,Linux、UNIX以及安裝了cywin程序的Windows都帶有bash。如果你身為一名系統管理員但是不會bash腳本編程,你最好馬上開始學習。這篇文章里列舉了很多好的參考書。下面是一段簡單的bash腳本。

  1. #!/bin/bash  
  2.    
  3. USER=$1  
  4.    
  5. echo "Adding User $USER in group users..."  
  6.    
  7. /usr/sbin/useradd -g users $USER  
  8.    
  9. if [ $? == 0 ]; then  
  10.         /usr/bin/passwd $USER  
  11. else  
  12.         echo "Sorry, User addition failed"  
  13. fi 

Perl

基本上,Perl可以看做UNIX和Windows系統上的(圖靈)完備編程語言。Perl的含義是實用報表提取語言(Practical Extraction and Report Language)。Perl是一種通用編程語言,起初開發Perl是用于文字處理,現在的使用范圍非常廣泛,包括系統管理、Web開發、網絡編程、甚至GUI開發等許多場合。

它的優點是易于使用且同時支持面向過程和面向對象編程。Perl是模塊化的,易于調用第三方模塊。盡管設計的目標是圖靈完備的編程語言,但是自1993年面世開始Perl一直被用作編寫系統管理腳本。Perl既支持編譯也可以解釋執行,因此Perl比bash腳本更安全。當錯誤發生時,bash腳本并不知道;然而,如果在執行之前編譯過程中有任何錯誤發生Perl會拒絕啟動執行。一段小的Perl腳本會讓你體會Perl語言的風格。#之后的內容是注釋。這段腳本會創建一個包含1000個隨機數的數組,每個隨機數包含16個數字:

  1. #!/usr/bin/perl  
  2.    
  3. my @numbers;  
  4. srand (time);  
  5.    
  6. for ($i=0; $i<1000; $i++)  
  7. {  
  8. $a=int 10000000000*rand();  
  9. $b=int 10000000000*rand();  
  10. $c = $a . $b;  
  11.    
  12. push @numbers,substr($c,0,16)."\n";  
  13. }  
  14. print @numbers; 

PHP

大家都知道PHP“通常”被用作Web網站開發,但是它也可以像Perl一樣執行系統管理任務。這就是為什么很多系統管理員使用PHP完成cron任務和其他腳本工作。雖然與Perl功能相似,但是PHP的目標是生成HTML標準輸出。通常它會被嵌入在Web服務器程序中運行。命令行版本的PHP支持腳本編程。類似上面Perl示例,同樣功能的PHP腳本如下:

  1. #!/usr/bin/php  
  2.    
  3. function make_seed()  
  4. {  
  5.    
  6. list($usec, $sec) = explode(' ', microtime());  
  7.    
  8. return (float) $sec + ((float) $usec * 100000);  
  9. }  
  10.    
  11. srand (make_seed());  
  12.    
  13. for ($i=0; $i<1000; $i++)  
  14. {  
  15. $a=rand(1000000000,9999999999);  
  16. $b=rand(1000000000,9999999999);  
  17. $c = $a . $b;  
  18.    
  19. $numbers[]=substr($c,0,16);  
  20. }  
  21. for ($i=0; $i<1000;$i++)  
  22.    
  23. echo "$numbers[$i]\n"; 

Python

很明顯,我們是在討論腳本語言而不是亞馬遜叢林里的某種動物。Python是通用高級編程語言,它強調代碼的可讀性。Python的語法非常簡潔且富有表現力。與Perl類似,Python也有很多的擴展庫。盡管Python具備函數式編程的能力,但是大多數時候它被看作一門面向對象語言。Web開發方面,Python被用來開發Apache項目的mod_wsgi模塊。如今,大多數Linux和UNIX發行版本都包含了Python,作為腳本語言的一種很多系統工具采用Python進行開發。Python也支持為GUI環境編寫代碼。下面是一段簡單的python代碼:

  1. health = 10 
  2. trolls = 0 
  3. damage = 3 
  4.    
  5. while health >0:        #!= 0:  
  6.    
  7. trolls += 1  
  8.    
  9. healthhealth = health - damage  
  10.    
  11. print " " \  
  12.    
  13. "but takes", damage, "damage points.\n"  
  14.    
  15. print " ", trolls, "trolls." 

sed

sed是一個Unix文本解析工具,它提供一種編程語言可用來對文本解析和轉換。sed是流編輯器(Stream Editor)的縮寫,基本上是一個運行飛快的文本編輯器。sed不提供任何交互環境進行文件編輯。它逐行讀取內容,對讀取的內容執行命令行指定的操作即sed腳本,然后輸出執行結果。你可以對文件用sed快速執行文本操作。最近Perl被用來處理同樣的工作,但是仍然有一些情形需要由專家級系統管理員使用sed快速解決任務。下面是一個簡單的示例:

  1. $ sed -e 's/foo/bar/g' myfile.txt 

這個命令會查找myfile.txt文件中所有的foo并替換成bar然后把結果輸出到屏幕上。sed的主要命令是‘s/foo/bar/g’,該命令在vi或vim在交互式編輯模式下同樣支持。

除了本文介紹的這些之外,還有像Ruby、VBScript、Java Script、JScript、Tcl、AppleScript和Falcon等等很多其他的腳本語言。本文旨在介紹那些在系統管理中常用的腳本語言,希望你能夠熟悉它們并提升你的工作效率。

英文原文:iSystemAdmin 

譯文來自:伯樂在線

責任編輯:黃丹 來源: 伯樂在線
相關推薦

2009-08-17 10:08:24

2009-06-10 08:41:15

Linux腳本語言

2013-09-27 09:43:44

Linux Shell腳本數學表達式

2010-02-24 14:04:32

Python腳本語言

2011-08-22 18:00:53

Lua語言

2010-07-26 15:32:08

Perl腳本語言

2009-04-03 09:16:22

PHPRubyPython

2011-08-22 16:59:28

Lua

2011-08-25 11:02:04

2010-02-26 09:33:51

Python腳本

2011-08-25 10:40:21

Lua游戲

2011-08-16 10:03:45

Groovy編程語言Web

2011-08-23 09:44:28

LUA腳本

2011-08-25 09:55:27

2010-02-26 13:03:31

Python腳本語言

2011-09-07 09:51:27

Javascript

2011-08-22 18:08:09

Lua腳本

2022-07-04 08:35:57

Vim 9.0Linux腳本語言

2010-07-26 15:55:51

Perl腳本語言

2010-03-25 16:31:55

Python代碼
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩av免费在线电影 | 一区二区小视频 | 亚洲精品乱码久久久久久9色 | 欧美日高清视频 | 亚洲欧美视频 | 91 在线| 久久精品国产免费 | 欧美三级成人理伦 | 日韩一区二区三区av | 欧美日韩中文字幕 | 成人在线观看免费爱爱 | 伊人一区 | 欧美日韩不卡 | 日韩中文字幕在线视频 | 动漫www.被爆羞羞av44 | 精品1区2区| 美国一级片在线观看 | 亚洲精品国产成人 | 久草精品视频 | 视频在线观看一区 | 精精国产xxxx视频在线播放 | 日韩久久中文字幕 | 日韩色综合 | 国产精品日韩一区二区 | www.日韩| 欧美日韩国产在线观看 | av在线二区| 日本高清中文字幕 | 在线91 | 亚洲一区二区在线视频 | 久久青青| 在线不卡一区 | 精品一区免费 | 国产一区二区三区免费观看视频 | 精品一区二区三区91 | 日日精品 | 在线国产视频 | 国产精品日韩在线观看一区二区 | 我要看一级片 | 久久视频免费观看 | 亚洲精品白浆高清久久久久久 |