电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

Unix系統(tǒng)下Find命令的三個高級應(yīng)用

瀏覽:5日期:2024-06-14 16:33:16

Find命令是Unix操作系統(tǒng)中一個很強大的工具。這個命令除了可以用來定位文件外,還有其他許多很實用的用途。如可以用來備份文件、交互式刪除文件、列舉文件清單等等。只要靈活應(yīng)用這些功能的話,那么對于系統(tǒng)工程師的日常工作就能夠起到事半功倍的效果。

一、利用Find命令對文件進行備份。

如在Unix操作系統(tǒng)中有一個用戶為oracle。系統(tǒng)會在Home目錄下自動為這個用戶創(chuàng)建一個子目錄Oracle?,F(xiàn)在用戶希望能夠?qū)ψ约耗夸浵碌奈募M行自動備份,以防止文件的以外丟失。如下圖所示,現(xiàn)在系統(tǒng)工程師準(zhǔn)備把用戶目錄下面的文件備份到backup目錄下面,并把文件名字重命名為backup。這個功能可以實現(xiàn)呢?答案當(dāng)然是肯定的。可以利用find命令結(jié)合cp命令來實現(xiàn)這個功能。

1、文件的最后修改時間。

在Unix系統(tǒng)的文件屬性中,有非常重要的三個時間截,分別為文件最后修改時間、文件最后訪問時間、inode節(jié)點最后修改時間。一旦用戶對某個文件執(zhí)行了更改操作,則文件inode節(jié)點里的最后修改時間就會被更新了。需要注意的是,在Unix操作系統(tǒng)中目錄也被當(dāng)作文件的一種,為此對目錄的修改,如創(chuàng)建一個目錄或者更改目錄的名字也會被當(dāng)作文件的修改來對待。另外文件修改后,只會更改文件的修改時間,而不會影響到目錄的最后修改時間。所以如果一個目錄下有一個文件更改了,則在備份的時候只需要備份這個更改的文件即可,而不需要備份這個目錄下其他沒有更改的文件。

出于備份效率的考慮,在備份的時候只備份當(dāng)天修改過的文件。為此在備份時首先要做的就是找到這些最近更改過的文件。這個解決的思路就是從這個文件的最后修改時間入手。在find命令中有一個參數(shù)為mtime,它表示修改時間少于x天。如果我們把這個參數(shù)設(shè)置為1,那么find命令就可以找出在最近一天內(nèi)修改過的文件。為此只需要對這些找到的文件進行備份即可。

2、重命名文件。

需要備份的文件找到之后,接下去要做的就是利用cp命令把這些文件復(fù)制到其他目錄中去。但是這里還需要做的一件事情是在復(fù)制過去后需要把文件進行重命名,即在原來文件的后面加上.backup,以提醒用戶這些是備份文件,不能夠刪除或者修改。要實現(xiàn)這個功能的話,就需要用到文件名的占位符號。如果利用cp命令復(fù)制文件后同時批量更改文件的名字,只需要使用 cp {} {}.backup即可。這里的{}符號就是文件名的占位符號。cp {} {}.backup這個命令的功能就是先把文件復(fù)制到一個特定的目錄中,然后在對復(fù)制過去的每個文件進行重命名,后面都依次加上.backup內(nèi)容。

為此要實現(xiàn)上面文件備份的需要,只需要使用命令

find /home/oracle –mtime 1 –exec cp {} /backup/{}.backup ;即可。

執(zhí)行這個命令后,系統(tǒng)會在用戶主目錄下尋找所有修改時間少于1天的文件,并把找到的文件復(fù)制到/backup目錄下。并在每一個原始文件后面增加一個擴展名.backup。最后的;是一個固定格式必須要有。然后系統(tǒng)工程師只需要把這個命令加入到cron中,讓操作系統(tǒng)在每天中午或者其他空閑的時間周期性執(zhí)行這個命令即可。如此的話,操作系統(tǒng)就會自動對用戶的文件進行備份,以防止文件意外損壞或者修改所造成的損失。

另外需要注意的是,在Unix操作系統(tǒng)中find命令只可以找到最近一天修改的文件。而在Linux操作系統(tǒng)中,還有mmin參數(shù),這個參數(shù)是以分鐘為單位,如可以找到那些最近4個小時或者1個小時之內(nèi)修改過的文件,從而提高備份的頻率。為此系統(tǒng)工程師可以根據(jù)用戶的需要來調(diào)整文件備份的頻率。不過筆者認(rèn)為,一般情況下文件備份一天一次即可。

二、把找到的文件清單保存到文件中。

Find命令還可以根據(jù)文件的權(quán)限來查找。如把用戶主目錄下所有用戶都可以讀寫的文件找出來。這些文件所有的用戶都可以修改,為此具有一定的安全隱患。系統(tǒng)工程師可能希望把這些文件對應(yīng)的清單保存到一個文件中,然后他們可以根據(jù)這份清單一個個的去調(diào)整權(quán)限。如果只是顯示在屏幕中的話,對于他們后需的工作很不方便??偛荒軌蚰霉P抄下來或者每修改一個執(zhí)行一下查詢命令吧?為此把找到的文件清單保存到一個文本文件中是必需的。要實現(xiàn)這個需求的話,可以采用如下命令:

Find /home –perm 666 –type f –ls >detail.txt

在這條命令中,條件語句中主要用了兩個參數(shù),分別為權(quán)限參數(shù)perm與文件類型參數(shù)-type。在Unix操作系統(tǒng)中主要包括三類文件(其余幾類不怎么用),分別為普通文件、目錄文件與連接文件。這里只需要尋找普通文件,為此就可以利用-type參數(shù)來指定需要查找的文件類型。另外值得注意的是,如果在條件語句中有多個參數(shù)話,則其默認(rèn)會采取的是與運算,即必須同時滿足以上兩個條件的文件才會被查找出來。如果系統(tǒng)工程師需要采用或預(yù)算的話,則需要在參數(shù)之間加入-o可選項,它表示條件之間的關(guān)系是或的關(guān)系,只需要滿足其中任何一個條件即可。在查詢條件中還有一個很重要的操作符,即!操作符,它表示相反的條件。如現(xiàn)在系統(tǒng)工程師想查找所有的目錄文件與普通文件(不考慮其他種類的特殊文件),則有兩種表示方法。一是 –type f –o –type –d;二是! –type l。很明顯采用了!操作符的第二種處理方式要簡單的多。為此系統(tǒng)工程師可以根據(jù)自己的需要來選擇合適的操作符。

其次在第三部分的動作參數(shù)中大家可以看到,在上面的例子中采用了exec關(guān)鍵字,但是在這個例子中卻沒有用到。這是為什么呢?原來在find命令的定義中,由于ls命令與print命令比較常用,為此用到這兩個命令的時候,直接利用橫桿加上命令即可。如果使用其他命令則需要加入exec關(guān)鍵字。

三、交互式復(fù)制找到的文件。

如現(xiàn)在用戶需要把某個文件夾下自己所創(chuàng)建的文件復(fù)制到另外一個目錄中。但是并不是所有的文件,用戶希望能夠自己來選擇是否需要進行復(fù)制。要實現(xiàn)這個目的的話,就需要用到find命令中的ok參數(shù)。在命令參數(shù)種加入-ok選項,主要是告訴操作系統(tǒng)這個命令需要以交互式的方式來執(zhí)行。當(dāng)用戶輸入y的話,操作系統(tǒng)就會執(zhí)行這些動作;而輸入n的話,則會忽略。

如要實現(xiàn)上面這個需求,可以執(zhí)行這個命令來實現(xiàn)。Find /home –user oracle –ok cp {} /backup ;此時這個OK選項的意思就是當(dāng)把每個查找到的文件移動到指定的目錄時,不管目標(biāo)文件是否存在,都需要用戶進行確認(rèn)。只有用戶輸入y后,ok 后面的命令才會被執(zhí)行,否則的話就會被忽略不計。除了OK選項外,有些命令本身就包含了一個交互性的選項。如rm文件刪除命令。若沒有帶-i交互性選項的話,則操作系統(tǒng)會直接刪除文件,而不會等待用戶確認(rèn)。但是若在這個命令后面加入-i選項的話,則每刪除一個文件的話,系統(tǒng)就會提示用戶確認(rèn)。只要命令本身就支持這個-i交互式選項,那么在find命令中就可以直接使用這個參數(shù),而不需要利用ok選項。在大部分命令中,這兩個選項的效果是相同的。但是有些則不同。如CP命令。Cp –i命令表示把文件從一個地方復(fù)制到另外一個地方,如果目標(biāo)文件已經(jīng)存在的話,則會提醒用戶是否需要覆蓋;如果不存在的話則會直接復(fù)制過去。但是采用ok 選項的話則表示無論目標(biāo)文件是否存在,都需要系統(tǒng)管理員一一進行確認(rèn)。也就是說-i選項只有在目標(biāo)文件存在的時候,可能需要覆蓋才會讓用戶進行確認(rèn)。而ok選項的話則根本不管目標(biāo)文件存在與否,都要進行確認(rèn)。到底需要采用哪個參數(shù),則就要根據(jù)用戶的需要了。

另外也可以利用這個find命令來交互式的刪除文件。如Find /home –user oracle –exec rm –I {} ;。在這個命令中就是用到了rm刪除命令自帶的-i交互式選項。默認(rèn)情況下文件刪除時是不需要用戶確認(rèn)的。但是無疑這是比較危險的一個動作。為此在涉及到文件刪除操作、或者原始文件可能被覆蓋的情況下,最好能夠使用交互式的方式進行。

標(biāo)簽: Unix系統(tǒng)
主站蜘蛛池模板: 新型游乐设备,360大摆锤游乐设备「诚信厂家」-山东方鑫游乐设备 新能源汽车电池软连接,铜铝复合膜柔性连接,电力母排-容发智能科技(无锡)有限公司 | 消泡剂-水处理消泡剂-涂料消泡剂-切削液消泡剂价格-东莞德丰消泡剂厂家 | 深圳工程师职称评定条件及流程_深圳职称评审_职称评审-职称网 | 安徽合肥格力空调专卖店_格力中央空调_格力空调总经销公司代理-皖格制冷设备 | 蔬菜清洗机_环速洗菜机_异物去除清洗机_蔬菜清洗机_商用洗菜机 - 环速科技有限公司 | 河南不锈钢水箱_地埋水箱_镀锌板水箱_消防水箱厂家-河南联固供水设备有限公司 | 烟气换热器_GGH烟气换热器_空气预热器_高温气气换热器-青岛康景辉 | 日本东丽膜_反渗透膜_RO膜价格_超滤膜_纳滤膜-北京东丽阳光官网 日本细胞免疫疗法_肿瘤免疫治疗_NK细胞疗法 - 免疫密码 | 钛合金标准件-钛合金螺丝-钛管件-钛合金棒-钛合金板-钛合金锻件-宝鸡远航钛业有限公司 | 定制奶茶纸杯_定制豆浆杯_广东纸杯厂_[绿保佳]一家专业生产纸杯碗的厂家 | 六维力传感器_三维力传感器_二维力传感器-南京神源生智能科技有限公司 | 地磅-电子地磅维修-电子吊秤-汽车衡-无人值守系统-公路治超-鹰牌衡器 | 威海防火彩钢板,威海岩棉复合板,威海彩钢瓦-文登区九龙岩棉复合板厂 | 活性炭-蜂窝-椰壳-柱状-粉状活性炭-河南唐达净水材料有限公司 | 馋嘴餐饮网_餐饮加盟店火爆好项目_餐饮连锁品牌加盟指南创业平台 | 沉降天平_沉降粒度仪_液体比重仪-上海方瑞仪器有限公司 | 合肥抖音SEO网站优化-网站建设-网络推广营销公司-百度爱采购-安徽企匠科技 | 绿萝净除甲醛|深圳除甲醛公司|测甲醛怎么收费|培训机构|电影院|办公室|车内|室内除甲醛案例|原理|方法|价格立马咨询 | 流量检测仪-气密性检测装置-密封性试验仪-东莞市奥图自动化科技有限公司 | 房屋质量检测-厂房抗震鉴定-玻璃幕墙检测-房屋安全鉴定机构 | 企典软件一站式企业管理平台,可私有、本地化部署!在线CRM客户关系管理系统|移动办公OA管理系统|HR人事管理系统|人力 | 运动木地板价格,篮球馆体育运动木地板生产厂家_欧氏地板 | 上海小程序开发-上海小程序制作公司-上海网站建设-公众号开发运营-软件外包公司-咏熠科技 | 流量卡中心-流量卡套餐查询系统_移动电信联通流量卡套餐大全 | 耐高温硅酸铝板-硅酸铝棉保温施工|亿欧建设工程 | 元拓建材集团官方网站| 上海噪音治理公司-专业隔音降噪公司-中广通环保 | 深圳离婚律师咨询「在线免费」华荣深圳婚姻律师事务所专办离婚纠纷案件 | 印刷人才网 印刷、包装、造纸,中国80%的印刷企业人才招聘选印刷人才网! | 土壤养分检测仪_肥料养分检测仪_土壤水分检测仪-山东莱恩德仪器 大型多片锯,圆木多片锯,方木多片锯,板材多片锯-祥富机械有限公司 | 帽子厂家_帽子工厂_帽子定做_义乌帽厂_帽厂_制帽厂_帽子厂_浙江高普制帽厂 | 滚筒烘干机_转筒烘干机_滚筒干燥机_转筒干燥机_回转烘干机_回转干燥机-设备生产厂家 | POS机官网 - 拉卡拉POS机免费办理|官网在线申请入口 | 拼装地板,悬浮地板厂家,悬浮式拼装运动地板-石家庄博超地板科技有限公司 | SRRC认证_电磁兼容_EMC测试整改_FCC认证_SDOC认证-深圳市环测威检测技术有限公司 | 美国PARKER齿轮泵,美国PARKER柱塞泵,美国PARKER叶片泵,美国PARKER电磁阀,美国PARKER比例阀-上海维特锐实业发展有限公司二部 | 欧美日韩国产一区二区三区不_久久久久国产精品无码不卡_亚洲欧洲美洲无码精品AV_精品一区美女视频_日韩黄色性爱一级视频_日本五十路人妻斩_国产99视频免费精品是看4_亚洲中文字幕无码一二三四区_国产小萍萍挤奶喷奶水_亚洲另类精品无码在线一区 | 水成膜泡沫灭火剂_氟蛋白泡沫液_河南新乡骏华消防科技厂家 | 美侍宠物-专注宠物狗及宠物猫训练|喂养|医疗|繁育|品种|价格 | 阿米巴企业经营-阿米巴咨询管理-阿米巴企业培训-广东键锋企业管理咨询有限公司 | 骨灰存放架|骨灰盒寄存架|骨灰架厂家|智慧殡葬|公墓陵园管理系统|网上祭奠|告别厅智能化-厦门慈愿科技 |