當前位置:首頁 » 編程軟體 » linux下腳本

linux下腳本

發布時間: 2022-03-15 12:56:58

A. linux下的shell腳本

提示語法錯誤,可能是有個什麼符號沒全,比如那些成對的符號。

B. linux下小腳本

1、做一個腳本,比如說叫做 /home/search.sh,其內容如下:
#!/bin/sh
if [ -z "$1" ]; then # 參數檢查
echo "Usage: $0 filename"
exit 1
fi
result="`grep '123' $1 2>&1`" # 查找123
if [ $? -eq 0 ]; then
echo "'123' found."
exit 0
fi
result="`grep '456' $1 2>&1`" # 查找456
if [ $? -eq 0 ]; then
echo "'456' found."
exit 0
fi
echo "nothing found."

2、修改其執行許可權
$ chmod a+x /home/search.sh

3、在crontab中增加一行如下配置:
# crontab -u <用戶名> -e # 指定用於執行腳本的用戶。除非必要,盡量避免用root執行。

* * * * * /home/search.sh /path/to/abc.log >> /home/search.log # 每1分鍾執行一次

C. linux shell 腳本

兄弟,你上面寫的真是shell嗎?看你腳本就不爽.改一下吧
照你上面說的,一條命令就解決了
find /etc -size +1000c -exec rm -rf {} \;
這條命令是刪除/etc/下大於1K的文件
查找的路徑最好寫絕對路徑

你的腳本改完是下面這樣的.你要喜歡寫命令的全路徑就把命令改成全路徑的
你腳本我沒試過,要是不行你再說
for in in `ls`
do
fize="`ls -l $i|cut -d" -f 5`"
if [ $fize -gt 1024 ]
then
rm -rf $i
fi
done

D. Linux如何編寫shell腳本

  1. 一般以#!/bin/sh開頭(不是必須要寫,但一定要單獨一行),指定執行這個腳本的shell程序(也可以用#!/bin/zsh或其他),然後就是堆命令了。

  2. Linux的shell腳本支持很多功能,加上Linux高度模塊化的命令,完全可以用shell腳本寫出復雜的程序。

  3. 以上只是簡單介紹如何開始寫shell腳本,如果要寫復雜的腳本,還需要深入學習相關知識(如if——fi、case——esac等結構)。

  4. 當然,還需要給腳本加上可執行許可權(chmod +x ./file.sh),否則可以用sh ./file.sh方式執行腳本(這里的sh是執行腳本所需shell,命令也可以是zsh ./file.sh或其他)。

  5. 整個shell腳本,其實就相當於你在終端輸入的一系列命令,如果想在shell里做什麼,就先想想在終端可以做什麼吧,字元的的連接,就是直接用 "" 雙引號,輸出,變數定義無 $ 符號,但是使用時一定要加上 $ 符號。

  6. "=" 賦值符號,兩邊一定不能有空格,這和其他語言有區別,尤其是你還有自己代碼美觀風格時特別注意,否則會報語法錯誤!

  7. for 中的數組內容是以 " " 空格分隔,而非 "," 逗號分格。

  8. 條件判斷 [ true ] 中括弧 後面需要有一個空格,但是兩個中括弧之間不能有空格如 [[ true ]]。

  9. while 條件判斷可以用 () 括弧,也可以用 [[ ]] 中括弧。

  10. 如果用windows寫shell,一定要注意換行符格式 而非 , 需要藉助一些編輯器(如notepad++)更改換行符格式!

E. 怎麼在linux下創建一個可運行腳本

步驟:

1.新建一個.sh文件,touch test.sh

(5)linux下腳本擴展閱讀:

Linux是一套免費使用和自由傳播的類Unix操作系統,是一個基於POSIX和UNIX的多用戶、多任務、支持多線程和多CPU的操作系統。它能運行主要的UNIX工具軟體、應用程序和網路協議。它支持32位和64位硬體。Linux繼承了Unix以網路為核心的設計思想,是一個性能穩定的多用戶網路操作系統。

Linux操作系統誕生於1991 年10 月5 日(這是第一次正式向外公布時間)。Linux存在著許多不同的Linux版本,但它們都使用了Linux內核。Linux可安裝在各種計算機硬體設備中,比如手機、平板電腦、路由器、視頻游戲控制台、台式計算機、大型機和超級計算機。

嚴格來講,Linux這個詞本身只表示Linux內核,但實際上人們已經習慣了用Linux來形容整個基於Linux內核,並且使用GNU工程各種工具和資料庫的操作系統。

腳本(Script)是使用一種特定的描述性語言,依據一定的格式編寫的可執行文件,又稱作宏或批處理文件。

Linux系統的shell作為操作系統的外殼,為用戶提供使用操作系統的介面。它是命令語言、命令解釋程序及程序設計語言的統稱。

shell是用戶和Linux內核之間的介面程序,如果把Linux內核想像成一個球體的中心,shell就是圍繞內核的外層。當從shell或其他程序向Linux傳遞命令時,內核會做出相應的反應。

shell是一個命令語言解釋器,它擁有自己內建的shell命令集,shell也能被系統中其他應用程序所調用。用戶在提示符下輸入的命令都由shell先解釋然後傳給Linux核心。

F. linux 中怎樣執行腳本

首先腳本需要有執行許可權

chmo+xfile.sh

執行腳本有三種方法:

1../file.sh

特點:開啟bash子進程來執行,也就是開啟額外的進程來進行,不影響原進程的變數、配置等

2.bashfile.sh

特點:和./file.sh相同

3.sourcefile.sh或者.file.sh

特點:在原bash進程中執行腳本。


第三種方法主要用於在腳本中切換用戶su、切換目錄cd等命令。

source和.命令是相同的。

你可以搜索source

補充,如何查看腳本運行是否開啟了bash子進程

  1. vim file.sh

  2. 寫入

    #!/bin/bash

    #echo $$命令會輸出bash進程ID

    echo $$

  3. 保存並賦予可執行許可權chmod u+x file.sh

  4. 在你的shell中輸入,echo $$ 屏幕輸出4176

  5. ./file.sh 屏幕輸出3600

  6. bash file.sh 屏幕輸出3984

  7. source file.sh 屏幕輸出4176 和 你直接在shell中輸出的一樣,說明是在同一個bash進程

G. linux 中如何執行腳本

ash shell 腳本的方法有多種,現在作個小結。假設我們編寫好的shell腳本的文件名為hello.sh,文件位置在/data/shell目錄中並已有執行許可權。
方法一:切換到shell腳本所在的目錄(此時,稱為工作目錄)執行shell腳本:

cd /data/shell
./hello.sh

./的意思是說在當前的工作目錄下執行hello.sh。如果不加上./,bash可能會響應找到不到hello.sh的錯誤信息。因為目前的工作目錄(/data/shell)可能不在執行程序默認的搜索路徑之列,也就是說,不在環境變數PASH的內容之中。查看PATH的內容可用 echo $PASH 命令。現在的/data/shell就不在環境變數PASH中的,所以必須加上./才可執行。
方法二:以絕對路徑的方式去執行bash shell腳本:

/data/shell/hello.sh

方法三:直接使用bash 或sh 來執行bash shell腳本:

cd /data/shell
bash hello.sh



cd /data/shell
sh hello.sh

注意,若是以方法三的方式來執行,那麼,可以不必事先設定shell的執行許可權,甚至都不用寫shell文件中的第一行(指定bash路徑)。因為方法三是將hello.sh作為參數傳給sh(bash)命令來執行的。這時不是hello.sh自己來執行,而是被人家調用執行,所以不要執行許可權。那麼不用指定bash路徑自然也好理解了啊,呵呵……。
方法四:在當前的shell環境中執行bash shell腳本:

cd /data/shell
. hello.sh



cd /data/shell
source hello.sh

前三種方法執行shell腳本時都是在當前shell(稱為父shell)開啟一個子shell環境,此shell腳本就在這個子shell環境中執行。shell腳本執行完後子shell環境隨即關閉,然後又回到父shell中。而方法四則是在當前shell中執行的。

H. linux下如何寫腳本處理多個文件。

find . -type f | xargs <你的腳本文件>

for f in 'ls'
do
你的腳本 ${f}
done

你的腳本 *

I. Linux 腳本 sh 和 ./ 的區別

區別只有一點:

sh表示腳本默認使用sh腳本解釋器。

未指定腳本解釋器默認為 ./。

具體解釋:

使用「./」執行腳本,對應的xxx.sh腳本必須要有執行許可權。

使用「sh」 執行腳本,對應的xxx.sh沒有執行許可權,亦可執行。

當腳本開頭使用#!設置使用的shell類型時,使用「./」執行腳本時,則使用「#!」標志的shell執行腳本;若無使用「#!」標記,則使用系統設置的默認shell執行腳本。

(9)linux下腳本擴展閱讀:

舉例:

登錄用戶root查看許可權:

-rwx—— 1 root root

執行這個shell腳本 :

./test 成功。

sh test 成功。

去掉執行許可權x:

-rw——- 1 root root 17 2011-09-22 23:33 test

執行這個shell腳本。

./test 失敗 (-bash: ./test: Permission denied)。

sh test 成功。

熱點內容
tomcat編譯後的文件 發布:2025-01-23 06:05:46 瀏覽:253
惠普暢遊人14是什麼配置表 發布:2025-01-23 05:57:39 瀏覽:295
簡單搭建ftp伺服器 發布:2025-01-23 05:49:41 瀏覽:227
有qq號沒密碼如何登上 發布:2025-01-23 05:34:08 瀏覽:469
javajsdes加密 發布:2025-01-23 05:33:21 瀏覽:770
qq怎麼上傳視頻到電腦上 發布:2025-01-23 05:07:27 瀏覽:972
如何申請i7伺服器地址 發布:2025-01-23 04:42:15 瀏覽:848
瀏覽器內核源碼 發布:2025-01-23 04:41:34 瀏覽:662
精英版繽智少了些什麼配置 發布:2025-01-23 04:41:30 瀏覽:359
編寫c編譯器 發布:2025-01-23 04:41:30 瀏覽:971