当前位置首页 > 百科资料> 正文

逻辑运算符

2022-07-06 02:04:44 百科资料

在形式逻辑中,逻辑运算符逻辑联结词把语句连接成更复杂的复杂语句。例如,假设有两个逻辑命题,分别是"正在下雨"和"我在屋里",我们可以将它们组成复杂命题"正在下雨,并且我在屋里"或"没有正在下雨"或"如果正在下雨,那么我在屋里"。一个将两个语句组成的新的语句或命题叫做复合语句复合命题

  • 中文名 逻辑运算符
  • 对象 形式逻辑
  • 举例 "非"(Not;)、"与"(AND)
  • 作用 把语句连接成更复杂的复杂语句
  • 领域 数学,计算机

简介

  逻辑NOT

  逻辑AND

  逻辑OR

  优先级为:NOT AND OR

  同级运算从左到右

  在运行中输入cmd,进入dos,输入cd\进入C盘的目录,然后输dir就是c盘文件的列表. 输入cd windows进入windows文件夹,输入tree就是目录树的意思. 输入D;进入D盘

  搜索的话就用find命令,和windows搜索这个功能差不多.

  Dir c:*.exe/b/s就可以把C盘的所有.exe文件搜索出来

  语法:find 起始目录 寻找条件 操作

  以下是摘抄的内容.

  find命令

  功能:在目录结构中搜索文件,并执行指定的操作。此命令提供了相当多的查找条件,功能很强大。

  语法:find 起始目录 寻找条件 操作

  说明:find命令从指定的起始目录开始,递归地搜索其各个子目录,查找满足寻找条件的文件并对之采取相关的操作。

  该命令提供的寻找条件可以是一个用逻辑运算符not、and、or组成的复合条件。逻辑运算符and、or、not的含义为:

  (1)and:逻辑与,在命令中用“-a”表示,是系统缺省的选项,表示只有当所给的条件都满足时,寻找条件才算满足。例如:     $ find –name ’tmp’ –xtype c -user ’inin’

  该命令寻找三个给定条件都满足的所有文件。

  (2)or:逻辑或,在命令中用“-o”表示。该运算符表示只要所给的条件中有一个满足时,寻找条件就算满足。例如:

  $ find –nme ’tmp’ –o –name ’mina*’

  该命令查询文件名为’tmp’或是匹配’mina*’的所有文件。

  (3)not:逻辑非,在命令中用“!”表示。该运算符表示查找不满足所给条件的文件。例如:

  $ find ! –name ’tmp’

  该命令查询文件名不是’tmp’的所有文件。

  需要说明的是:当使用很多的逻辑选项时,可以用括号把这些选项括起来。为了避免Shell本身对括号引起误解,在话号前需要加转义字符“”来去除括号的意义。

  例:$ find (–name ’tmp’ –xtype c -user ’inin’ )

  寻找条件有以下选项:

  首先,下列各个选项中的n值可以有三种输入方式,假设n为20,则:

  +20 表示20以后(21,22,23等)

  -20 表示20以前(19,18,17等)

  20 表示正好是20

  1. 以名称和文件属性查找。

  - name ’字串’ 查找文件名匹配所给字串的所有文件,字串内可用通配符*、?、〔 〕。

  - lname ’字串’ 查找文件名匹配所给字串的所有符号链接文件,字串内可用通配符*、?、〔 〕。

  -gid n 查找属于ID号为n的用户组的所有文件。

  -uid n 查找属于ID号为n的用户的所有文件。

  -group ’字串’ 查找属于用户组名为所给字串的所有的文件。

  -user ’字串’ 查找属于用户名为所给字串的所有的文件。

  -nogroup 查找无有效所属组的文件,即该文件所属的组在/ e t c / g r o u p s中不存在。

  -nouser 查找无有效属主的文件,即该文件的属主在/ e t c / p a s s w d中不存在。

  -newer file1 ! file2 查找更改时间比文件f i l e 1新但比文件f i l e 2旧的文件。

  -empty 查找大小为0的目录或文件。

  -path ’字串’ 查找路径名匹配所给字串的所有文件,字串内可用通配符*、?、〔 〕。

  -perm 权限 查找具有指定权限的文件和目录,权限的表示可以如711,644。

  -size n〔bckw〕 查找指定文件大小的文件,n后面的字符表示单位,缺省为b,代表512字节的块。

  -type x 查找类型为x的文件,x为下列字符之一:

  b 块设备文件

  c 字符设备文件

  d 目录文件

  p 命名管道(FIFO)

  f 普通文件

  l 符号链接文件(symbolic links)

  s socket文件

  -xtype x 与-type基本相同,但只查找符号链接文件。

  2. 以时间为条件查找

  - amin n 查找n分钟以前被访问过的所有文件。

  - atime n 查找n天以前被访问过的所有文件。

  - cmin n 查找n分钟以前文件状态被修改过的所有文件。

  - ctime n 查找n天以前文件状态被修改过的所有文件。

  - mmin n 查找n分钟以前文件内容被修改过的所有文件。

  - mtime n 查找n天以前文件内容被修改过的所有文件。

  3. 可执行的操作

  - exec 命令名称 {} \; 对符合条件的文件执行所给的unix 命令,而不询问用户是否需要执行该命令。{}表示命令的参数即为所找到的文件,命令的末尾必须以“ \;”结束,"{}"和"\;"之间必须有一个空格。

  - ok 命令名称 {} \; 对符合条件的文件执行所给的Linux 命令,与exec不同的是,它会询问用户是否需要执行该命令。

  - ls 详细列出所找到的所有文件。

  - fprintf 文件名 将找到的文件名写入指定文件。

  - print 在标准输出设备上显示查找出的文件名。

  - printf 格式 格式的写法请参考有关C语言的书。

  使用name选项

  文件名选项是f i n d命令最常用的选项,要么单独使用该选项,要么和其他选项一起使用。

  可以使用某种文件名模式来匹配文件,记住要用引号将文件名模式引起来。

  不管当前路径是什么,如果想要在自己的根目录$ H O M E中查找文件名符合* . t x t的文件,

  使用~作为' p a t h n a m e参数,波浪号~代表了你的$ H O M E目录。

  $ find ~ -name "*.txt" -print

  想要在当前目录及子目录中查找所有的' * . t x t'文件,可以用:

  $ find . -name "*.txt" -print

  想要的当前目录及子目录中查找文件名以一个大写字母开头的文件,可以用:

  $ find . -name "[A-Z]*" -print

  想要在/ e t c目录中查找文件名以h o s t开头的文件,可以用:

  $ find /etc -name "host*" -print

  想要查找$ H O M E目录中的文件,可以用:

  $ find ~ -name "*" -print 或find . -print

  要想让系统高负荷运行,就从根目录开始查找所有的文件。如果希望在系统管理员那里

  保留一个好印象的话,最好在这么做之前考虑清楚!

  $ find / -name "*" -print

  如果想在当前目录查找文件名以两个小写字母开头,跟着是两个数字,最后是* . t x t的文件,下面的命令就能够返回名为a x 3 7 . t x t的文件:

  $ find . -name "[a-z][a-z][0--9][0--9].txt" -print

  使用perm选项

  如果希望按照文件权限模式来查找文件的话,可以采用- p e r m选项。你可能需要找到所有

  用户都具有执行权限的文件,或是希望查看某个用户目录下的文件权限类型。在使用这一选

  项的时候,最好使用八进制的权限表示法。

  为了在当前目录下查找文件权限位为7 5 5的文件,即文件属主可以读、写、执行,其他用

  户可以读、执行的文件,可以用:

  $ find . -perm 755 -print

  如果希望在当前目录下查找所有用户都可读、写、执行的文件(要小心这种情况),我们

  可以使用f i n d命令的- p e r m选项。在八进制数字前面要加一个横杠-。在下面的命令中- p e r m代

  表按照文件权限查找,而' 0 0 7'和你在c h m o d命令的绝对模式中所采用的表示法完全相同。

  $ find . -perm -007 -print

  忽略某个目录

  如果在查找文件时希望忽略某个目录,因为你知道那个目录中没有你所要查找的文件,

  那么可以使用- p r u n e选项来指出需要忽略的目录。在使用- p r u n e选项时要当心,因为如果你同

  时使用了- d e p t h选项,那么- p r u n e选项就会被f i n d命令忽略。

  如果希望在/ a p p s目录下查找文件,但不希望在/ a p p s / b i n目录下查找,可以用:

  $ ind /apps -name "/apps/bin" -prune -o -print

  使用user和nouser选项

  如果希望按照文件属主查找文件,可以给出相应的用户名。例如,在$ H O M E目录中查找

  文件属主为d a v e的文件,可以用:

  $ find ~ -user dave -print

  在/ e t c目录下查找文件属主为u u c p的文件:

  $ find /etc -user uucp -print

  为了查找属主帐户已经被删除的文件,可以使用- n o u s e r选项。这样就能够找到那些属主

  在/ e t c / p a s s w d文件中没有有效帐户的文件。在使用- n o u s e r选项时,不必给出用户名; f i n d命令

  能够为你完成相应的工作。例如,希望在/ h o m e目录下查找所有的这类文件,可以用:

  $ find /home -nouser -print

  使用group和nogroup选项

  就像u s e r和n o u s e r选项一样,针对文件所属于的用户组, f i n d命令也具有同样的选项,为

  在/ a p p s目录下查找属于a c c t s用户组的文件,可以用:

  $ find /apps -group accts -print

声明:此文信息来源于网络,登载此文只为提供信息参考,并不用于任何商业目的。如有侵权,请及时联系我们:baisebaisebaise@yeah.net