导航:首页 > 操作系统 > linuxshellfind

linuxshellfind

发布时间:2022-09-03 02:50:28

linux的find的命令(菜鸟请教一下各位前辈)

find命令的参数及使用命令:
pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。
-print: find命令将匹配的文件输出到标准输出。
-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。
-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。
#-print 将查找到的文件输出到标准输出
#-exec command {} \; —–将查到的文件执行command操作,{} 和 \;之间有空格
#-ok 和-exec相同,只不过在操作前要询用户
例:find . -name .svn | xargs rm -rf
====================================================
-name filename #查找名为filename的文件
-perm #按执行权限来查找
-user username #按文件属主来查找
-group groupname #按组来查找
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n #按文件访问时间来查GIN: 0px">
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2 找文件,-n指n天以内,+n指n天以前
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-newer f1 !f2 #查更改时间比f1新但比f2旧的文件
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c] #查长度为n块[或n字节]的文件
-depth #使查找在进入子目录前先行查找完本目录
-fstype #查更改时间比f1新但比f2旧的文件
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c] #查长度为n块[或n字节]的文件

② Linux中的shell命令find中的:-perm 后面接 权限位和加了横线的权限位有什么不同。

#(case 1)-perm mode (比如: -perm 775)
解释:775 前面没有横线是代表只要找到百分之百一样的权限才算
好比说一个档案是 -rwxrwxr-x (775)就是100%的match
但是另一个档案是 -rwxrwxrwx (777)不是100%的match,others 多了写的权限就不是100%,所以不match!

# (case 2) -perm -mode (例如: -perm -775)
解释:-775 前面有横线表示只要标示的权限match,其他的无所谓,所以上面的第二个档案(777的)在这个case也会match的。

这样懂了吗?
谢谢!

英文资料:http://unixhelp.ed.ac.uk/CGI/man-cgi?find

-perm mode
File's permission bits are exactly mode (octal or symbolic). Since an exact match is required, if you want to use this form for symbolic modes, you may have to specify a rather complex mode string. For example '-perm g=w' will only match files which have mode 0020 (that is, ones for which group write permission is the only permission set). It is more likely that you will want to use the '/' or '-' forms, for example '-perm -g=w', which matches any file with group write permission.

-perm -mode
All of the permission bits mode are set for the file. Symbolic modes are accepted in this form, and this is usually the way in which would want to use them. You must specify 'u', 'g' or 'o' if you use a symbolic mode. See the EXAMPLES section for some illustrative examples.

③ linux shell怎么打印find 的结果的第一行的第四列

管道后面用head和awk命令:your_scripts.sh | head -1 | awk '{ print $4 }'

④ linux shell编程find 指令

#!/bin/bash
filename=`find -name "*.txt"`
sed "s/^.*/$filename--&/g" $filename

⑤ linux操作系统利用find 命令如何查找某个目录的位置

1、linux命令如果记不得,可以使用man命令来查看某个命令的使用。但对应初学者往往看不懂或者不知道什么场景下使用

(5)linuxshellfind扩展阅读

Linux简介:

Linux是一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和UNIX的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的UNIX工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。

Linux操作系统诞生于1991 年10 月5 日(这是第一次正式向外公布时间)。Linux存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。

严格来讲,Linux这个词本身只表示Linux内核,但实际上人们已经习惯了用Linux来形容整个基于Linux内核,并且使用GNU工程各种工具和数据库的操作系统。

⑥ linux怎么通过shell查找到某一个文件的绝对路径

1、如果查找可执行文件的绝对路径,可以使用whereis或者which命令。

图片说明:find命令用于查找文件,/etc是要查找文件目录,如果完全不知道文件路径,可以指明为/(根目录),-name是find的参数后面指明要查找的文件名称。这里以hosts文件为例。

⑦ Linux shell 执行这句 find 命令总是报错,怎么修改呢

在 Linux 系统中,find 的使用方法一般是:
#find / -name "*.c" -print

其中:/ 表示从根目录开始查找文件;*.c 表示查找以 *.c 为后缀的 C 语言源程序;-print 表示将查找到的结果显示在屏幕上。
至于说关于 shell 编程方面的程序调试,由于 shell 的语法相当严格,所以你必须要严格按照 shell 的语法和结构来书写才行。哪怕差一点都不能够通过。你再仔细检查一下你的 shell 文件。

⑧ linux shell编程 find -name *.c -print|xargs grep $1

find
-name
*.c
-print
找*.c匹配的文件
|
管道
xargs
防止命令行过长,详细的功能你查一下吧
grep
$1
过滤字符匹配变量$1的行
你这语应该是从脚本抄出来的吧,$1一般代表脚本或函数的第一个参数

⑨ linux Shell怎么查找指定文件,并进入该文件所在目录,目录有空格

1.使用绝对路径执行的shell文件(如/home/xxx/binfile)
直接使用dirname $0即可
2.对于使用相对路径执行的shell文件(如 ./xxx/binfile)
pwd与dirname结合使用;pwd获得的是执行当前shell文件时,用户所在的位置;dirname可以获得相对于那个位置的偏移:
例如某shell文件所在的位置是/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src/notify_serv/shell文件名

1 #!/bin/sh
2 pwd
3 echo `dirname $0`
执行后输出
/home/user_name/work2/SNS3_server_im/Developing/trunk/im_capp/src
./notify_serv

⑩ Linux在执行shell脚本时提示find: command not found,单独执行该命令可以正常执行

出现此问题的原因:linux 执行sh文件里面缺少PATH=$PATH:/sbin,将其添加进即可解决问题。

详细的操作步骤如下:

1、首先,需要打开计算机的桌面,右键单击并选择“打开终端”这一项,如下图所示。

阅读全文

与linuxshellfind相关的资料

热点内容
加密货币换平台 浏览:609
手机内存压缩软件 浏览:33
生成树是否与遍历算法有关 浏览:727
python强化学习迷宫 浏览:449
老包子解压视频 浏览:885
服务器注册是什么意思 浏览:418
程序员群体焦虑如何破局 浏览:584
程序员在广州上班 浏览:803
androidlinuxadt 浏览:512
广联达软件加密锁原装芯片 浏览:338
如何打开数据库服务器 浏览:310
kppm是什么app 浏览:538
python多个数组命名 浏览:192
a算法csdn 浏览:23
r720服务器什么年代 浏览:975
本地电脑怎么设置传奇服务器 浏览:1002
安卓10框架怎么制作 浏览:959
程序员退休工资待遇 浏览:609
湛江中文编程数控系统代理 浏览:419
openglandroid书 浏览:170