中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

linux中常用腳本和函數的示例分析

發布時間:2021-10-08 15:29:47 來源:億速云 閱讀:124 作者:小新 欄目:開發技術

這篇文章將為大家詳細講解有關linux中常用腳本和函數的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

#查找當前目錄中是否存在指定目錄,若不存在,則創建之

代碼如下:


function mkdir_1
{
  if test ! -d $1
    then
     mkdir $1
  fi
}


#指定文件中的"prefix = .*"串替換為"prefix=/home/gnome-unicore-install2/usr/"
#可以用來作為sed用法的參考

代碼如下:


function modify_prefix
{
   chmod +w $1
   cp $1 $1.bak
   sed 's/prefix = .*/prefix=/home/gnome-unicore-install2/usr/g' $1.bak > $1
   rm $1.bak
}


#指定文件中的"^LDFLAGS =.*"串替換為"LDFLAGS = -rdynamic -lgdk_pixbuf -lgtk -lgdk -lgmodule -lglib -ldl -lXext -lX11 -lm"

代碼如下:


#change_gnome-config FILENAME
function change_gnome-config
{
   cp $1 $1.bak
   sed 's/^LDFLAGS =.*/LDFLAGS = -rdynamic -lgdk_pixbuf -lgtk -lgdk -lgmodule -lglib -ldl -lXext -lX11 -lm /g' $1.bak> $1    
   rm $1.bak
}


#刪除指定文件的含有指定字符的行
#格式:delete_line filename "word_contain"

代碼如下:


function delete_line
{
   chmod +w $1
   cp $1 $1.bak
   cat $1.bak | grep -v -e "$2" >$1      
}


#用途:刪除文件中包含line1或(和?)line2的行
#格式:delete_line filename line1 line2

代碼如下:


function delete_line_no
{
   chmod +w $1
   cp $1 $1.bak
   sed  $2,$3'd' $1.bak>$1
   rm $1.bak

}

#用途:在LINE_NO指定的行插入字符串CONTENT
#可以用來作為sed用法的參考
#格式: add_line FILENAME LINE_NO CONTENT

代碼如下:


function add_line
{
    chmod +w $1
    cp $1 $1.bak
    sed -e $2 'i' "$3" '' $1.bak > $1
    rm $1.bak
}


#用途:檢查含有"PC24"代碼的程序并打印出來
#格式: check_PC24 //after installation 

代碼如下:


function check_PC24
{
  echo "now comes the PC24 checking..."
  . $COMMAND_UNICORE/shell/shell_PC24 >& /dev/null
  if test -s $COMMAND_UNICORE/PC24_result
     then :
       echo "The following file contains PC24 problems: $COMMAND_UNICORE/PC24_result "
     else
       echo "No PC24 problem found"
  fi
}


#打印標題

代碼如下:


displayheader() {
    echo "   *****************************************"
    echo "   *         IeeeCC754 testing tool           *"
    echo "   *****************************************"
    echo " "
}


#打印一個菜單的做法

代碼如下:


displayplatformmenu() {
    #clear the screen
    clear
    displayheader
    echo "   a) SunSparc "
    echo "   b) IntelPentium "
    echo "   c) AMD "
    echo "   d) Unicore32 "
    echo "   e) Unicore32(with FP2001) "
    echo " "
    echo  -n "   select a Platform > "
}


#接收一個菜單輸入

代碼如下:


displayplatformmenu
read answer
case ${answer} in
      a) TARGET="BasicOp";;
      b) TARGET="Conversion";;
      *) badchoice;;
esac


#查找當前目錄下是否存在file_name文件
#可以用來作為if用法的參考

代碼如下:


detectfile_name() {
  if [ ! -f file_name ]
     then
     echo "Error: file_name does not exist.  Please check"
     exit 1;
    else
      echo "OK,the directy is exist"
  fi
}


#將參數指定的一個或多個目錄項以及其下的多級子目錄下的所有文件名和目錄名轉換為小寫。

代碼如下:


cvitem()
{
echo "mv $1 `dirname $1`/`basename $1 | tr
'ABCDEFGHIJKLMNOPQRSTUVWXYZ' 'abcdefghijklmnopqrstuvwxyz'`"
}
[ $# = 0 ] && { echo "Usage: lcdir item1 item2 ..."; exit; }
for item in $*     #可以用來作為for用法的參考
do
[ "`dirname $item`" != "`basename $item`" ] && {
[ -d $item ] &&
{
for subitem in `ls $item`
do
cvlc $item/$subitem
done
}
cvitem $item
}
done


#一個login的例子

代碼如下:


if ($?path) then
set path=($HOME/bin $path)
else
set path=($HOME/bin /usr/bin .)
endif
if ( ! $ {?DT} ); then
stty dec new
tset -I -Q
endif
set mail=/usr/spool/mail/$USER


#關于if使用的幾個例子
#執行一個命令或程序之前,先檢查該命令是否存在,然後才執行

代碼如下:


if [ -x /sbin/quotaon ] ; then
echo "Turning on Quota for root filesystem"
/sbin/quotaon /
fi


#得到Hostname
#!/bin/sh

代碼如下:


if [ -f /etc/HOSTNAME ] ; then
HOSTNAME=`cat /etc/HOSTNAME`
else
HOSTNAME=localhost
fi


#如果某個設定檔允許有好幾個位置的話,例如crontab,可利用if then elif fi來找尋

代碼如下:


if [ -f /etc/crontab ] ; then #[ -f /etc/crontab ]等價于test -f /etc/crontab
CRONTAB="/etc/crontab"
elif [ -f /var/spool/cron/crontabs/root ] ; then
CRONTAB="/var/spool/cron/crontabs/root"
elif [ -f /var/cron/tabs/root ] ; then
CRONTAB="/var/cron/tabs/root"
fi
export CRONTAB


#利用uname來判斷目前系統,并分別做各系統狀況不同的事。

代碼如下:


SYSTEM=`uname -s`
if [ $SYSTEM = "Linux" ] ; then
echo "Linux"
elif [ $SYSTEM = "FreeBSD" ] ; then
echo "FreeBSD"
elif [ $SYSTEM = "Solaris" ] ; then
echo "Solaris"
else
echo "What?"
fi


#關于while使用的例子
#無條件循環

代碼如下:


while : ; do
echo "do something forever here"
sleep 5
done

關于“linux中常用腳本和函數的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

虹口区| 清水县| 泾源县| 巴马| 平罗县| 普格县| 方城县| 进贤县| 五家渠市| 潼关县| 繁昌县| 永平县| 颍上县| 麻江县| 买车| 大石桥市| 即墨市| 潼南县| 田林县| 阿瓦提县| 五寨县| 鄂托克前旗| 宜君县| 大化| 雷州市| 株洲县| 江阴市| 通辽市| 新和县| 凤冈县| 兴国县| 清徐县| 永胜县| 浦江县| 喀什市| 大余县| 阜康市| 宁海县| 黄龙县| 巴林右旗| 洱源县|