服务器find寻找文件路径,Linux find 查找文件

在日志文件夹下判断是否有web服务器的日志文件夹,写了个脚本:web

#!/bin/bash

cd /wls/annuity_acc

for sys in `cat ./WIIServer_name_list.txt`

do

#find /logs/$sys* -name "$sys*" |xargs echo -en '\n' >> 123.txt正则表达式

find /logs/$sys* -name "$sys*" -print

donebash

#find /logs/$sys* -name "$sys*" |xargs echo -en '\n' >> 123.txt 服务器

输出到123.txt,可是若是有多个匹配的状况会出现不换行的状况,如:ui

ABBSWII6758  ABBSWII6759  ABBSWII6760spa

annWII3454日志

gbsWII9876

想要如下格式输出到文本:web服务器

ABBSWII6758  it

ABBSWII6759 test

ABBSWII6760

annWII3454

gbsWII9876

只想到用-print方法

===============mark   2012-05-04=============

#find /logs/$sys* -name "$sys*" -exec ls -l {} \; >> 123.txt

能够获得列表效果

=============find -perm查找  多路径=============

这两天碰到一个查找某一路径下的非777的mdl文件,能够用如下来实现:

find /pamis/data5/cognos/createcubes8/*/mdl -name "*.mdl" -type f |xargs ls -l |grep -v rwx

find /pamis/data5/cognos/createcubes8/*/mdl -name "*.mdl" -type f ! -perm 777 -exec ls -l {} \;

以上两种获得的效果是同样的,可是若是要将获得的结果作为输入流传给&2,可能二者会有差异

find后面的路径支持多个,可是要以空格隔开,而且路径支持*?[1-9]这样的正则表达式:以下:

find /pamis/data5/cognos/createcubes8/*/mdl/[e,g,i,n,p][h,b,o,e][i,s,c,w,t,n]* -name "*.mdl" -type f ! -perm 777 -exec ls -l {} \; >&2

=========find -regex正则表达式查找  多路径===========

find /home/panzhaobo -name "*.pl" -type f ! -perm 777 -exec ls -l {} \;|xargs echo "" > testmdl.log

find -regex '/home/panzhaobo/.*\.pl' -type f ! -perm 777 -exec ls -l {} \;

上面的-regex是正则表达式后面的参数是带全路径的name

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值