當前位置:首頁 » 網頁前端 » shell執行目錄下所有腳本
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

shell執行目錄下所有腳本

發布時間: 2022-01-23 17:37:23

Ⅰ shell批量執行多個shell腳本

把多個shell腳本的執行命令和必要的參數,分行寫入一個腳本文件中,加上日誌輸出。

Ⅱ shell腳本實現統計目錄下(包括子目錄)所有文件的個數

在shell終端中輸入下列命令:

#在當前目錄生成腳本文件countfile
cat>countfile<<SCRIPT
#!/bin/sh
find"$@"-typef|
wc-l
SCRIPT
#為腳本添加許可權
chmod+xcountfile
#執行用例
./countfile~

Ⅲ shell批量執行不同目錄下的多個sh文件的寫法

按照你的說法,需要首先遍歷你需要的文件,然後用一個for循環來執行
遍歷的話還需要知道你的腳本文件有什麼通用的地方,比如都叫elasticsearch

那還是通過find來找
find . -type f -name elasticsearch*

Ⅳ 如何運行文件夾中的所有shell腳本

foriin*.sh;dobash$i;done;

Ⅳ linux shell腳本怎麼獲取目錄下所有txt文件名稱

執行如下三條命令即可:
(1)、$script myresultfile
(2)、$ls -al *.txt
(3)、$exit

此時,該目錄下的所有 txt 文件名稱就會以長格式保存在 myresultfile 文件中了。

然後你再使用 SHELL 編程的功能把那些無用的列去掉即可。

Ⅵ 如何用shell腳本統計出當前目錄下子目錄,還有所有可讀,可寫,可執行的文件的個數

#!/bin/bash

fcnt=0
dcnt=0
frcnt=0
fwcnt=0
fxcnt=0
forfilein*
do
if[-f$file];then
letfcnt+=1
if[-r$file];then
letfrcnt+=1
fi
if[-w$file];then
letfwcnt+=1
fi
if[-x$file];then
letfxcnt+=1
fi
elif[-d$file];then
letdcnt+=1
fi
done
echo"Thereare$fcntfilesin$PWD"
echo-e" Thereare$frcntreadablefilesin$PWD"
echo-e" Thereare$fwcntwriteablefilesin$PWD"
echo-e" Thereare$fxcntexecuteablefilesin$PWD"
echo"Thereare$dcntdirectoriesin$PWD"

Ⅶ 如何用shell編程列印出目錄下的所有文件內容

1)看下面的腳本a1.sh,假設要顯示目錄/home/user/tmp/下面的所有的文件和(子)目錄的名字:

$ cat a1.sh
#!/bin/bash

for file in /home/user/tmp/*
do
echo $file
done

2)假設目錄/home/user/tmp/下面的所有的文件和(子)目錄如下:

$ ls
1.txt 2.txt a1.sh a.sh b.sh email_back m1.doc tmp

3)運行腳本:
$ a1.sh (或者./a1.sh)
/home/user/tmp/1.txt
/home/user/tmp/2.txt
/home/user/tmp/a1.sh
/home/user/tmp/a.sh
/home/user/tmp/b.sh
/home/user/tmp/email_back
/home/user/tmp/m1.doc
/home/user/tmp/tmp

4)腳本a1.sh的作用只是顯示文件和子目錄的列表,要顯示文件的內容,腳本繼續改造,內容如下,看腳本a2.sh:

$ cat a2.sh
#!/bin/bash

for file in /home/shiqingd/tmp/*
do
echo $file
if [ -f $file ]; then
cat $file
fi
done

腳本a2.sh可以達到目的。

Ⅷ 如何目錄A下執行另一目錄(目錄B)下的shell腳本test

可能知道怎麼回事了。

估計B腳本中添加了引用路徑的當前變數。


比如:B腳本中有一變數

Cur_Dir=$(pwd)

這樣執行過程如果不是當前目錄執行的,就會引用A目錄下的路徑,自然找不到指定的文件。


知道原因後,即可在B下執行,或者變數B中的路徑為完整路徑

Ⅸ bash腳本遍歷目錄指定後綴的文件,並執行操作

可以使用ls或者find來完成對某個文件夾下所有文件的遍歷
比如使用ls
可以簡單地使用一個通配符來完成
ls 某個目錄/*
也可以使用find來完成
比如
find 某個目錄
自然的也可以寫一個shell腳本來進行遍歷
首先進行一個要遍歷的文件夾
然後循環查看每個文件
如果該文件是一個文件夾的話則進入該文件夾做和上面相同的事件
這樣就可以該整個文件夾內的所有文件進行遍歷了
一個簡單的代碼如下
#!/bin/bash

function show()
{
cd $1

for i in `ls`
do
if [ -d "$i" ]
then
show "$i"
else
echo "$i"
fi
done

cd ..
}

show $1

exit 0
該程序不能遍歷以.開頭的隱藏文件
可以使用ls -a來進行遍歷隱藏文件
遍歷時需要注意.和..這兩個特殊文件

下面是一個簡單的代碼
#!/bin/bash

function show()
{
cd $1

for i in `ls -a`
do
if [ "$i" == "." ] || [ "$i" == ".." ]
then
continue;
fi

if [ -d "$i" ]
then
show "$i"
else
echo "$i"
fi
done

cd ..
}

show $1

exit 0

Ⅹ shell批量執行同一目錄不同文件夾裡面的東西

注意文件本身別放到50個文件夾裡面,容易造成死循環。
#!/bin/sh
for file in `find /opt -type f -name "*.sh"`;do
echo $file
sh $file
done