最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

使用腳本實(shí)現(xiàn)自動(dòng)清除指定文件夾下丟失鏈接文件的符號(hào)鏈接

 更新時(shí)間:2020年02月03日 11:05:57   作者:AndrewYZWang  
這篇文章主要介紹了使用腳本實(shí)現(xiàn)自動(dòng)清除指定文件夾下丟失鏈接文件的符號(hào)鏈接,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

使用腳本實(shí)現(xiàn)自動(dòng)清除指定文件夾下丟失鏈接文件的符號(hào)鏈接

腳本可清除,指定文件夾下,對(duì)視鏈接文件的符號(hào)鏈接。

在使用Linux時(shí),常常會(huì)為自己許多文件或者程序建立符號(hào)鏈接,這樣就不用每次都到對(duì)應(yīng)的文件夾下去尋找對(duì)應(yīng)的文件而只需要對(duì)需要經(jīng)常訪問的文件建立符號(hào)鏈接就可以了,這樣就能把你常需要訪問的文件放到桌面上,或者指定到另外一個(gè)文件夾中。

這樣訪問時(shí),方便了很多,但是用完之后往往留下許多的符號(hào)鏈接,這些鏈接需要用戶自己手動(dòng)確認(rèn)是否可以刪除,為linux的使用帶來很多的不方便,使用該腳本就能解放你的雙手,只需要執(zhí)行一下腳本,就能將對(duì)應(yīng)文件夾下沒有用的符號(hào)鏈接清除。

#!/bin/bash
# 一個(gè)可以測(cè)試鏈接斷掉的符號(hào)鏈接的文件,并且可以輸出它們指向的文件
# 以便于它們可以把輸出提供給xargs來進(jìn)行處理 :)
# 比如. broken-link.sh /somedir /someotherdir|xargs rm
#
#下邊的方法, 不管怎么說, 都是一種更好的辦法:
#
#find "somedir" -type l -print0|\
#xargs -r0 file|\
#grep "broken symbolic"|
#sed -e 's/^\|: *broken symbolic.*$/"/g'
#
#但這不是一個(gè)純粹的bash腳本, 最起碼現(xiàn)在不是.
#注意: 謹(jǐn)防在/proc文件系統(tǒng)和任何死循環(huán)鏈接中使用!
##############################################################
#如果沒有參數(shù)被傳遞到腳本中, 那么就使用
#當(dāng)前目錄. 否則就是用傳遞進(jìn)來的參數(shù)作為目錄
#來搜索.
####################
[ $# -eq 0 ] && directorys=`pwd` || directorys=$@

#編寫函數(shù)linkchk用來檢查傳遞進(jìn)來的目錄或文件是否是鏈接,
#并判斷這些文件或目錄是否存在. 然后打印它們所指向的文件.
#如果傳遞進(jìn)來的元素包含子目錄,
#那么把子目錄也放到linkcheck函數(shù)中處理, 這樣就達(dá)到了遞歸的目的.
##########
linkchk () {
  for element in $1/*; do
    [ -h "$element" -a ! -e "$element" ] && echo \"$element\"
    [ -d "$element" ] && linkchk $element
    # 當(dāng)然, '-h'用來測(cè)試符號(hào)鏈接, '-d'用來測(cè)試目錄.
  done
}
#把每個(gè)傳遞到腳本的參數(shù)都送到linkchk函數(shù)中進(jìn)行處理,
#檢查是否有可用目錄. 如果沒有, 那么就打印錯(cuò)誤消息和
#使用信息.
################
for directory in $directorys; do
  if [ -d $directory ]
    then linkchk $directory
    else
      echo "$directory is not a directory"
      echo "Usage: $0 dir1 dir2 ..."
  fi
  done
exit 0
# 創(chuàng)建一個(gè)新文件 name
andrew@andrew:/work/bash/src$ touch name
# 為name創(chuàng)建符號(hào)鏈接
andrew@andrew:/work/bash/src$ ln -s name aaa
# 刪除name文件, aaa將會(huì)變成丟失鏈接文件的符號(hào)鏈接
andrew@andrew:/work/bash/src$ rm name
# 查看aaa為執(zhí)行當(dāng)前目錄下的name的符號(hào)鏈接文件
andrew@andrew:/work/bash/src$ ls -l
總用量 44
lrwxrwxrwx 1 andrew andrew  4 2月  1 13:20 aaa -> name
-rwxrwxr-x 1 andrew andrew 8656 1月 30 14:46 a.out
-rw-rw-r-- 1 andrew andrew 1887 2月  1 13:08 broken_link.sh
-rw-rw-r-- 1 andrew andrew 322 1月 29 13:08 echo_unique.sh
-rw-rw-r-- 1 andrew andrew 1513 1月 29 15:55 escape_charater.sh
-rw-rw-r-- 1 andrew andrew 279 1月 30 13:48 exit_example.sh
-rw-rw-r-- 1 andrew andrew 199 2月  1 11:52 if_else_more.sh
-rw-rw-r-- 1 andrew andrew 1946 1月 30 21:03 if_true.sh
-rw-rw-r-- 1 andrew andrew 337 1月 29 14:02 single_quotation_mark.sh
-rw-rw-r-- 1 andrew andrew 864 2月  1 12:00 test.c
# 調(diào)用腳本清除當(dāng)前文件夾中,丟失鏈接文件的符號(hào)鏈接
andrew@andrew:/work/bash/src$ bash broken_link.sh ./ | xargs rm
andrew@andrew:/work/bash/src$ ls -l
總用量 44
-rwxrwxr-x 1 andrew andrew 8656 1月 30 14:46 a.out
-rw-rw-r-- 1 andrew andrew 1887 2月  1 13:08 broken_link.sh
-rw-rw-r-- 1 andrew andrew 322 1月 29 13:08 echo_unique.sh
-rw-rw-r-- 1 andrew andrew 1513 1月 29 15:55 escape_charater.sh
-rw-rw-r-- 1 andrew andrew 279 1月 30 13:48 exit_example.sh
-rw-rw-r-- 1 andrew andrew 199 2月  1 11:52 if_else_more.sh
-rw-rw-r-- 1 andrew andrew 1946 1月 30 21:03 if_true.sh
-rw-rw-r-- 1 andrew andrew 337 1月 29 14:02 single_quotation_mark.sh
-rw-rw-r-- 1 andrew andrew 864 2月  1 12:00 test.c

總結(jié)

以上所述是小編給大家介紹的使用腳本實(shí)現(xiàn)自動(dòng)清除指定文件夾下丟失鏈接文件的符號(hào)鏈接,希望對(duì)大家有所幫助!

相關(guān)文章

  • perl去除重復(fù)內(nèi)容的腳本代碼(重復(fù)行+數(shù)組重復(fù)字段)

    perl去除重復(fù)內(nèi)容的腳本代碼(重復(fù)行+數(shù)組重復(fù)字段)

    perl去除重復(fù)內(nèi)容的小腳本,有需要的朋友可以參考下,包括重復(fù)行、數(shù)據(jù)組中重復(fù)的字段
    2013-03-03
  • 在Perl中使用Getopt::Long模塊來接收用戶命令行參數(shù)

    在Perl中使用Getopt::Long模塊來接收用戶命令行參數(shù)

    我們?cè)趌inux常常用到一個(gè)程序需要加入?yún)?shù),現(xiàn)在了解一下perl中的有關(guān)控制參數(shù)的函數(shù).getopt.在linux有的參數(shù)有二種形式.一種是–help,另一種是-h.也就是-和–的分別.–表示完整參數(shù).-表示簡(jiǎn)化參數(shù)
    2013-03-03
  • 用perl寫的單位電腦信息采集程序

    用perl寫的單位電腦信息采集程序

    perl,后來我又改過了增加了一些交互和數(shù)據(jù)庫(kù)檢測(cè)的功能。主要用于收集ip、mac、姓名、房間,后來又加入了維修記錄的功能。服務(wù)器端接受數(shù)據(jù)并存入數(shù)據(jù)庫(kù)中。
    2008-08-08
  • fdupe 查找重復(fù)文件的Perl腳本代碼

    fdupe 查找重復(fù)文件的Perl腳本代碼

    fdupe 是一個(gè)很小的 Perl 腳本,用來檢索指定目錄并找出其中重復(fù)的文件,該腳本是通過文件內(nèi)容來識(shí)別是否重復(fù)文件,而非文件名。fdupe 無需其他 Perl 腳本支持,運(yùn)行速度非???/div> 2013-03-03
  • perl如何避免腳本在windows中閃一下就關(guān)閉

    perl如何避免腳本在windows中閃一下就關(guān)閉

    寫好了perl程序,運(yùn)行后,準(zhǔn)備等待結(jié)果輸出時(shí),結(jié)果雙擊后,看到屏幕閃了一下,然后什么都沒有了,根本沒有機(jī)會(huì)然你看到輸出的結(jié)果
    2013-03-03
  • Perl文件句柄詳解

    Perl文件句柄詳解

    本文介紹一下Perl文件句柄的概念,要從文件中讀取一塊數(shù)據(jù),應(yīng)用程序需要調(diào)用函數(shù)ReadFile,并將Perl文件句柄在內(nèi)存中的地址和要拷貝的字節(jié)數(shù)傳送給操作系統(tǒng)
    2013-03-03
  • perl常問題集合之一

    perl常問題集合之一

    perl常問題集合之一...
    2007-03-03
  • Perl語言的循環(huán)實(shí)現(xiàn)方法小結(jié)

    Perl語言的循環(huán)實(shí)現(xiàn)方法小結(jié)

    Perl語言中提供了多種循環(huán)結(jié)構(gòu),包括for、while、do...while和foreach循環(huán),每種循環(huán)都有其特定的應(yīng)用場(chǎng)景和用法,循環(huán)控制語句如last、next和redo進(jìn)一步提升了循環(huán)的靈活性,通過靈活運(yùn)用這些循環(huán),可以編寫高效而簡(jiǎn)潔的代碼,感興趣的朋友跟隨小編一起看看吧
    2025-01-01
  • perl中尖括號(hào)運(yùn)算符(<>)使用說明

    perl中尖括號(hào)運(yùn)算符(<>)使用說明

    perl中尖括號(hào)運(yùn)算符的用途分享,這里簡(jiǎn)單介紹下,方便需要的朋友
    2013-03-03
  • Perl語言的語法糖示例詳解

    Perl語言的語法糖示例詳解

    Perl的語法糖更是其魅力所在,它不僅提高了開發(fā)效率,還使得代碼更加直觀易讀,本文將深入探討Perl語言中的語法糖,分析它們的工作原理及其對(duì)開發(fā)過程的影響,感興趣的朋友一起看看吧
    2025-01-01

最新評(píng)論

香港| 甘泉县| 浙江省| 汕头市| 疏勒县| 瓦房店市| 新田县| 澳门| 清镇市| 巴中市| 田东县| 二连浩特市| 永济市| 左云县| 个旧市| 安庆市| 麻城市| 茶陵县| 景宁| 黄浦区| 航空| 诏安县| 桑日县| 扬中市| 伊吾县| 盐池县| 方正县| 建阳市| 保德县| 合江县| 逊克县| 浦东新区| 广元市| 海兴县| 桂阳县| 吐鲁番市| 小金县| 景洪市| 成武县| 上栗县| 横山县|