導航:首頁 > 操作系統 > linux腳本文件判斷

linux腳本文件判斷

發布時間:2022-05-09 21:22:49

linux shell 如何判斷一個文件是否存在

了解你的意思,首先,test命令是判斷某一個特定的文件相關信息,也就是當你使用test這個命令的時候,你是清楚它叫什麼名字的(只是你不知道它的相關信息)。如果你要判斷比如你說的以hbc*開頭的一類文件,最好就是使用ls命令或者find命令來作。你可以參考一下,下面的小測試。
mike >>> ls -d ??? 12-04-20 23:15
acp/ apc/ scl tmp/ xmy/

mike >>> test -d x?? 12-04-20 23:15

mike >>> echo $? 12-04-20 23:16
0
mike >>> test -d x* 12-04-20 23:16
test: too many arguments
使用find命令能很好查找已hbc開頭的文件或者目錄,但是它不能判斷有沒有這樣的文件,因為你不能通過find的命令執行狀態來判斷是否有這樣的文件,但是可以把find的輸出導向到一個文件,從而對文件進行判斷。如下:
mike >>> find ./ -type d -name "FUK*" -print 12-04-20 23:24
mike >>> echo $? 12-04-20 23:24
0

⑵ linux中怎麼查看文件是否存在

兩個方式:find命令或者shell腳本。
1、find命令
find是linux下用於查找文件的通用方法。
find語法: find [指定查找目錄] [查找規則] [查找完後執行的action]
例如:find /tmp -name wa* -type l ,是在/tmp下查找名為wa開頭且類型為符號鏈接的文件。找到就表示存在。

2、shell腳本
在進行文件的自動處理中常常需要自動判別,下面的腳本判斷test.log是否存在,存在則顯示文件存在,否則顯示文件不存在。
例子:編輯一個腳本判斷文件是否存在

vi t.sh
#!/bin/bash
if [ -e /temp/test.log ];then //這里是判斷語句,-e表示進行比較結果為真則存在
echo "文件存在"
else

echo "文件不存在"
fi

保存退出
執行:
sh t.sh

⑶ linux下如何判斷該文件是否是可執行程序

無所謂什麼可執行。隨便一個文件都可以用「./filename」來執行(filename文件在當前目錄內)。
如果該文件原本就不是設計用來執行的(隨便舉個例子,比如一個OpenOffice文檔文件),敲入命令後執行,屏幕會報錯,說某句不合語法啥的。如果這個文件就是設計用來執行的,比如你說的二進制和腳本文件,在代碼沒錯的情況下,敲入命令後就會有預期的執行結果了。
如果文件屬性里有x,那麼你可以「./filename」來運行。否則,用「sudo
./filename」來執行。
而且終端中用ls命令後,這類屬性帶x的會顯示綠色。

⑷ 在linux下編寫shell腳本,判斷當前目錄下所有文件類型,如果是普通文件,顯示內容,如果是目錄

forfilein*
do
if[-f"$file"]
then
if[-s"$file"]
then
printf"File:$file "
cat"$file"
else
rm"$file"
fi
else[-d"$file"]
printf"Directory:$file "
ls"$file"
fi
printf" "
done

⑸ linux腳本編寫判斷文件是否變更並生成報告

你可以用rsync -azv 命令。它可以比對原先文件的時間,內容,以及許可權。你可以先用該命令那個目錄的內容備份出來。需要的時候就用備份出來的目錄內容比對原先系統目錄的內容,如果發生變化了,它會列表出來的。之後要怎麼做,都很簡單了。原始文件和變化文件你都有,可以任意操作。

⑹ linux shell腳本判斷某個文件的大小,符合條件則備份並重命名

cattest.sh
#!/bin/sh
FILE=$1
FILE_SIZE=`$FILE|awk'{print$2}'`
if[$FILE_SIZE-ge10485760]
then
cp-p$FILE$FILE-bak
fi

chmod+xtest.sh
./test.sh1.txt

逐行解釋

  1. 查看腳本文件test.sh

  2. 定義腳本默認用sh執行

  3. 將文件路徑賦予FILE變數。$1 表示位置變數即下面的1.txt

  4. 計算文件大小並賦予FILE_SIZE變數

  5. 如果文件大小大於等於10M. 10485760為10M,-ge為大於等於。

  6. if語法關鍵字

  7. 將文件重命名備份

  8. if語法關鍵字

  9. 空行

  10. 賦予腳本test.sh可執行許可權

  11. 執行腳本,輸入位置變數1.txt.

⑺ 編寫linux腳本,判斷一個文件中是否有指定的關鍵字,如果有執行命令,如果沒有執行其他命令

#!/bin/sh
ifgrep-qkeywordfilename
then
command
fi

keyword替換成你要的關鍵字,filename替換成你要判斷的文件名,command替換成你要執行的命令

⑻ linux腳本語言判斷文件許可權的參數是什麼

-r file用戶可讀為真
-w file用戶可寫為真
-x file用戶可執行為真
-f file文件為正規文件為真
-d file文件為目錄為真
-c file文件為字元特殊文件為真
-b file文件為塊特殊文件為真
-s file文件大小非0時為真
-t file當文件描述符(默認為1)指定的設備為終端時為真
如:
myPath="/var/log/httpd/"

myFile="/var /log/httpd/access.log"

#這里的-x 參數判斷$myPath是否存在並且是否具有可執行許可權

if [ ! -x "$myPath"]; then

mkdir "$myPath"

fi

#這里的-d 參數判斷$myPath是否存在

if [ ! -d "$myPath"]; then

mkdir "$myPath"

fi

#這里的-f參數判斷$myFile是否存在

if [ ! -f "$myFile" ]; then

touch "$myFile"

fi

⑼ linux的shell 腳本里怎麼用if 判斷文件大小呀

需要幾個工具 基本上思路是 用 配合awk取得文件大小 ,然後if判斷
偽代碼如下

s=` -k logfile|awk '{print $1}'`
if [ $s -gt 1024000000 ]
then
停止oracle監聽進程
rm -rf logfile && touch logfile
啟動oracle監聽進程
else
continue
fi

⑽ 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腳本文件判斷相關的資料

熱點內容
青春解壓套餐是干什麼 瀏覽:435
素描教程pdf 瀏覽:716
pdfweb瀏覽 瀏覽:531
安卓開發怎麼進入物聯網 瀏覽:612
安卓手機絕地求生如何進入國際服 瀏覽:18
汽車活動廣告宣傳有什麼app 瀏覽:753
富二代f2抖音app怎麼玩 瀏覽:926
java線程啟動線程的方法 瀏覽:252
兩位數互補演算法 瀏覽:781
甲骨文雲伺服器登錄 瀏覽:776
程序員那麼可愛在哪裡可以免費觀看 瀏覽:566
台灣伺服器地址大全 瀏覽:192
安卓自動美顏怎麼關 瀏覽:960
java手動釋放內存 瀏覽:868
迷你世界怎麼自己創伺服器 瀏覽:811
cmd命令不能運行 瀏覽:298
最新pdf閱讀 瀏覽:756
c語言中的排序演算法 瀏覽:597
php原生鏈接資料庫 瀏覽:45
web前端後端程序員 瀏覽:25