有關腳本的一些使用及其注意事項

1,shell 
腳本

格式要求:首行shebang機制

                 #!/bin/bash

                 #!/usr/bin/python

                 #!/usr/bin/perl

shell腳本的用途:

a、自動化常用命令

b、執行系統管理和故障排除

c、創建簡單的應用程序

d、處理文本或文件

 

創建腳本:

第一步:使用文本編輯器來創建文本文件

             a、第一行必須包括shell聲明序列:#!例如(#!/bin/bash

             b、添加注釋(注釋以#開頭)

第二步:運行腳本

             a、給予執行權限,在命令行上指定腳本的絕對或相對路徑

             b、直接運行解釋器,將腳本作為解釋器程序的參數運行

腳本調試:

          bash -n /path/to/some_script   檢測腳本中的語法錯誤

          bash -x /path/to/some_script    調試執行

如果是在當前目錄下創建的腳本,則執行的時候直接用 ./腳本名或者直接用腳本名就可以了(需要注意的是一定要給創建的腳本名加上執行權限)

2,進程的相關注意事項:

$:顯示當前的PID

PPID:顯示父進程

SHELVL: 顯示當前shell是幾級的bash

Pstree 顯示進程數

         -p 同時顯示進程PID

Ps -ef 顯示進程信息

3,本地變量:只對當前shell進程有效,對于其它shell進程及子進程無效

 

環境變量:對當前shell進程及子進程都有效

               變量定義:export name =‘value’

               變量引用:$name,${name}

               取消變量:unset name

               顯示變量:export,env,printenv

另外,需要注意的是Set 既顯示環境變量又顯示本地變量

關于腳本的學習要想熟練掌握還是要多多練習,一下是一些最近做的相關練習:

a、編寫腳本/root/bin/systeminfo.sh,顯示當前主機系統信息,包括主機名,IPv4地址,操作系統版本,內核版本,CPU型號,內存大小,硬盤大小

有關腳本的一些使用及其注意事項有關腳本的一些使用及其注意事項b,編寫腳本/root/bin/sumid.sh,計算/etc/passwd文件中的第10個用戶和第20用戶的ID之和

有關腳本的一些使用及其注意事項有關腳本的一些使用及其注意事項

c,編寫腳本/root/bin/sumspace.sh,傳遞兩個文件路徑作為參數給腳本,計算這兩個文件中所有空白行之和

有關腳本的一些使用及其注意事項有關腳本的一些使用及其注意事項

4,“或(||)”和“與(&&)”

與(&&)

真或假     假

真或真     真

假或真     假

假或假     假

總結:只要有一個假則假

短路與:只要前面有一個為假,則直接結束。如果前面為真,則繼續判斷第二個值

或(||)

真或假     真

真或真     真

假或真     真

假或假     假

總結:只要有一個真則真

短路或:只要前面有一個真,則直接結束。如果前面為假,則繼續判斷第二個值

以下是相關的練習:

a,編寫腳本/root/bin/hostping.h,接受一個主機的IPv4地址做為參數,測試是否可連通。如果能ping通,則提示用戶“該IP地址可訪問”;如果不可ping通,則提示用戶“該IP地址不可訪問”

有關腳本的一些使用及其注意事項有關腳本的一些使用及其注意事項

b,編寫腳本/root/bin/checkdisk.sh,檢查磁盤分區空間和inode使用率,如果超過80%,就發廣播警告空間將滿

有關腳本的一些使用及其注意事項有關腳本的一些使用及其注意事項

原創文章,作者:風之軌跡,如若轉載,請注明出處:http://www.www58058.com/83750

(0)
風之軌跡風之軌跡
上一篇 2017-08-05 11:57
下一篇 2017-08-05 14:33

相關推薦

  • N22-℡浮生.若夢 ╮第七周作業

    1、創建一個10G分區,并格式為ext4文件系統; (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl; ~]# mke2fs -t mkfs.ext4 -b 2048 -L MYDATA -m 2 /…

    Linux干貨 2016-11-14
  • 馬哥教育網絡班21期+第3周課程練習

    1、列出當前系統上所有已經登錄的用戶的用戶名,注意:同一個用戶登錄多次,則只顯示一次即可。 [root@centos ~]# who | awk '{print $1 $NF}'| uniq -d root(192.168.40.1) derulo(19…

    Linux干貨 2016-07-22
  • find 命令詳解

    Find 命令詳解 find:   實時查找工具, 通過遍歷指定路徑完成文件查找;   工作特點:     查找速度略慢     精確查找     實時查找 可能只搜索用戶具備讀取和執行權限的目錄   語法:   find [OP…

    2017-04-09
  • class17 網絡管理(二)

    IP 地址 它們可唯一標識IP網絡中的每臺設備 每臺主機(計算機、網絡設備、外圍設備)必須具有唯一的地址           IP 地址由兩部分組成:     ? 網絡ID:   …

    Linux干貨 2016-09-06
  • N26-第七周

    1、創建一個10G分區,并格式為ext4文件系統;   (1) 要求其block大小為2048, 預留空間百分比為2, 卷標為MYDATA, 默認掛載屬性包含acl;    (2) 掛載至/data/mydata目錄,要求掛載時禁止程序自動運行,且不更新文件的訪問時間戳; [root@localhost ~]# fdi…

    Linux干貨 2017-03-05
  • N26 第二周博客作業

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。 常用的文件管理工具有: cp mv rm cp 命令 : copy 的簡寫 語法格式:    1) 單源復制 cp [OPTION]… [-T] SOURCE DEST      …

    Linux干貨 2017-02-24
欧美性久久久久