簡體   English   中英

Linux Bash腳本取消隱藏目錄中的文件

[英]Linux Bash Script unhiding files in the directory

我試圖制作一個腳本來取消隱藏帶有參數--unhide的目錄中的文件,但是它不起作用。 你能幫我嗎? 這是我的部分代碼。

for i in `ls -1`
do
    if [ -f $i ] || [ -d $i ]
    then
        if [ `echo $i | cut -c1` == "." ]
        then
            mv $i ${i#.}
        fi
    fi
done

謝謝!

然后取消隱藏,然后我寫--unhide file1 file2呢?

elif [ $1 = --unhide ] && [ ! $2 = --all ]
then
for i in $@
do
if [ -f $i ] || [ -d $i ]
then
if [ `echo $i | cut -c1` == "." ]
then
mv $i ${i#.}
fi
fi
done    

很容易,我們沒有隱藏文件,然后參數名與文件名相同。 但是如何檢查隱藏文件? 我嘗試編寫--unhide .file1 .file2,但腳本僅取消隱藏.file1和.file2。

所以,基本上,您要使用的腳本是在目錄中重命名文件的腳本,其中文件以“。”開頭。

像下面這樣的東西應該工作

GLOBIGNORE=".:.."
for file in .*; do
   mv -n "$file" "${file#.}"
done

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM