shell簡單常用指令碼例項

2022-08-20 21:03:12 字數 840 閱讀 1993

#!/bin/bash

python gen_service_list.py >/dev/null 2>&1

if [ $? -ne 0 ]; then

echo "failed"

else

echo "succeed"

fi執行結果不輸出到頁面,執行結果成功返回succeed,失敗返回failed

#!/bin/bash

cd `dirname $0`/kehu_test_service

python general_classify_service.py plate_number/ 2>&1

if [ $? -ne 0 ]; then

echo "failed"

else

echo "succeed"

fi執行結果輸出到頁面,執行結果成功返回succeed,失敗返回failed

命令解析:

linux下的`dirname $0`

在命令列狀態下單純的執行 cd `dirname $0`是毫無意義的,它會返回當前路徑的"."。

這個命令寫在指令碼檔案中才會起作用,它返回這個指令碼檔案放置的目錄,並可以根據這個目錄來定位到所有執行程式的相對位置(絕對位置除外)。

在/home/work/test目錄下建立test.sh:

cd `dirname $0`/print

echo `pwd`

返回結果:/home/work/test/print

這樣就可以知道一些和指令碼一起部署的檔案的位置了,只要知道相對位置就可以根據這個目錄來定位,而可以不用關心絕對位置。指令碼的可移植性就提高了,放到任何乙個伺服器上(如果是部署指令碼)都可以執行。

shell指令碼例項

1.批量建立10個系統賬號test01 test10,並隨機設定8位數密碼 bin bash for i in seq w 10 do useradd test i echo random madsum cut c 8 tee a passwd.txt stdin test i done 2.在目錄...

Shell 指令碼例項

指令碼內容如下 bin bash action 定義函式,進行操作指南 action 1 database mysql uroot p 1 en e show databases grep e schema v mkdir p mnt sqldump e database name sql case...

Shell指令碼例項

1.寫乙個指令碼,利用迴圈計算10的階乘 bin sh factorial 1 for a in seq 1 10 dofactorial expr factorial a done echo 10 factorial 注 上面有一行,for a in seq 1 10 其中seq 1 10 即列出...