當前位置:首頁 » 知網查重 » linuxshell目錄存在

linuxshell目錄存在

發布時間: 2021-03-11 05:40:24

『壹』 linux的shell腳本中,如何通過until循環實現 當本目錄下存在restart文件夾的時候進行循環呢

可以使用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

『貳』 linux shell 判斷文件是否存在

介紹了linux shell 中判斷文件、目錄是否存在的方法,分享給大家
-e filename 如果 filename存在,則為真
-d filename 如果 filename為目錄,則為真
-f filename 如果 filename為常規文件,則為真
-L filename 如果 filename為符號鏈接,則為真
-r filename 如果 filename可讀,則為真
-w filename 如果 filename可寫,則為真
-x filename 如果 filename可執行,則為真
-s filename 如果文件長度不為0,則為真
-h filename 如果文件是軟鏈接,則為真

『叄』 在linux 下執行shell文件提示:No such file or directory,但這個路徑明明是存在的,為啥呢求指教

這個問題應該出在find命令上,在腳本中你的路徑「~/jre/log1」被保存在一個變數中$logPath

在腳本中:find$logPath-ctime+7這條命令,find把「~」當成普通字元,而不會解析為對應的home目錄。

在命令行(shell環境下)環境下:為什麼cd ~/jre/log1成功,是因為shell幫你解析「~」為對應的home目錄了。

所以如果在腳本中使用find命令,且用「~」表示要使用當前用戶home目錄,可以結合eval命令使用:

#!/bin/bash

logpath=$(cat/tmp/test.txt)獲取帶有~的路徑
find$(evalecho$logpath)-name"*.txt"使用eval計算表達式結果

『肆』 linux shell 判斷文件是否存在 存在就刪除

1、linux shell中判斷文件是否存在,可以使用test命令的-a參數。藉助於專if結構進行判斷即可。

2、以~/t/thello.py為例屬,檢測這個文件,如果存在將其刪除,示例代碼如下:

if[[-a~/t/hello.py]];then
echo"存在文件";
rm-f~/t/hello.py
fi;

3、測試效果如下圖所示

『伍』 linux中的shell腳本創建文件夾,若文件夾存在,則刪除重新創建,若不存在,直接創建,為什麼我的代碼不成

#!/bin/bash
dire="/tmp/mydire/"

[ -d "$dire" ] && rmdir "$dire"
mkdir "$dire"

這樣就可以了。
注意左中括弧後有一個空格,
右中括弧前有一個空格。

『陸』 linux shell命令在哪個文件夾

你說的shell,應該就是bash咯。。。你學會一個命令,以後就可以經常專使用了,

whereis xxx它可以找到命令的具體目錄屬

[root@iZ11b6kl1pcZ ~]# whereis bash

bash: /bin/bash /usr/share/man/man1/bash.1.gz

[root@iZ11b6kl1pcZ ~]# whereis cd

cd: /usr/share/man/man1p/cd.1p.gz /usr/share/man/man1/cd.1.gz


建議你學學新手需要掌握的命令!第2章 新手必須掌握的Linux命令。 http://www.linuxprobe.com/chapter-02.html

『柒』 linux的shell腳本,我現在需要判斷一個文件夾中是否存在包含上個月譬如201509字元的.dat文件

額...........這太簡單了................一條命令就搞定了...................
ls dir | grep -i '201509' | grep -i '.dat'
這種過濾一個下不就知道是否存在了么....................
實際上就是過濾一個文件名而已.........分兩個grep也是為了方便理解.........
實際可以用grep 一個正則就能搞定.......

『捌』 linux操作系統中shell命令循環查找家目錄下是否存在該文件,存在輸出已存在,並且將該文件內

find /home -name "a.txt" -exec cp {} backup \; -exec cp {} dat \;

『玖』 linux中shell查找alluxio文件夾中的某個文件是否存在

find /alluxio/ -type f -name "文件名"

熱點內容
塗鴉論文 發布:2021-03-31 13:04:48 瀏覽:698
手機資料庫應用 發布:2021-03-31 13:04:28 瀏覽:353
版面217 發布:2021-03-31 13:04:18 瀏覽:587
知網不查的資源 發布:2021-03-31 13:03:43 瀏覽:713
基金贖回參考 發布:2021-03-31 13:02:08 瀏覽:489
懸疑故事範文 發布:2021-03-31 13:02:07 瀏覽:87
做簡單的自我介紹範文 發布:2021-03-31 13:01:48 瀏覽:537
戰略地圖參考 發布:2021-03-31 13:01:09 瀏覽:463
收支模板 發布:2021-03-31 13:00:43 瀏覽:17
電氣學術會議 發布:2021-03-31 13:00:32 瀏覽:731