没有合适的资源?快使用搜索试试~ 我知道了~
Shell编程摘录
需积分: 0 0 下载量 67 浏览量
2011-12-18
13:45:18
上传
评论
收藏 414KB PDF 举报
温馨提示
试读
23页
Shell编程摘录
资源推荐
资源详情
资源评论
愚公科技
2011 12 11
[
年
]
Shell 编程摘录
愚公科技
愚公之资料库系列
1
1.文件的权限位
2.目录文件的权限位(r w x)
3.umask 确定了系统创建文件时的缺省权限位。
4.符号链接 ln -s source_path target_path
5.find 命令
6.xargs command 从管道中获取 command 的参数
--------------后台执行命令
7.cron 和 crontab
8.at 允许用户向 cron 守护进程提交作业,使其在指定的稍后时间运行。
9.&命令 把作业放到后台执行
10.nohup nohup 命令可以在你退出帐户之后继续运行相应的进程
-------------文件名置换
11.元字符*?[...][!...]
-------------shell 输入与输出
12.read 从键盘或文件的某一行文本中读入信息,并将其赋给一个变量
13.cat 显示文件内容,创建文件,显示控制字符
14.管道 可以通过管道把一个命令的输出传递给另一个命令作为输入。管道用竖杠|表示。
15.tee 它把输出的一个副本输送到标准输出,另一个副本拷贝到相应的文件中
愚公之资料库系列
1
16.echo 可以显示文本行或变量,或者把字符串输入到文件。
17.标准输入、输出和错误 文件描述符 0,1,2
18.文件重定向 >, >>,<,<<
19.exec exec 命令可以用来替代当前 shell
20.使用文件描述符 系统中实际上有 12 个文件描述符,用户可以任意使用文件描述符 3 到
9。
---------------命令执行顺序
21.使用&& 命令 1 && 命令 2
22.使用|| 命令 1 || 命令 2
23.用()和{}将命令结合在一起
1.文件的权限位
chmod [who] operator [permission] filename
who: u g o a ; operator: + - =
permission: r w x s(suid 和 guid) t(粘性位) l(给文件加锁,使其他用户无法访问)
chmod [mode] filename
mode: xxxx 4 位 8 进制数,分别用于:文件属主和组 set-id,属主权限,组权限,其他用
户权限
r(4) w(2) x(1) suid(4) guid(2)
eg: -rwxr-xr-- 为 754,-rwsr-xr-x 为 4755, -rwsr-sr-x 为 6755
在设置 suid 或 guid 的同时,相应的执行权限 x 位必须要被设置,如果不设置 x 位,则 s
位会作大写 S,表示 s 位无意义。-rwxrwSr-- 为 2764
愚公之资料库系列
1
2.目录文件的权限位(r w x)
r 可以列出目录中的内容
w 可以在该目录中创建、修改文件。w 位不设置,即使拥有目录中的文件的 w 权限也不能
写那个文件。
x 可以搜索和访问该目录。x 位不设置,不能访问目录下的任何文件。
3.umask 确定了系统创建文件时的缺省权限位。
umask 值=777-文件缺省权限值。系统不允许你在创建一个文件时就赋予它执行权限,即
umask 值为 002 时,创建文件的缺省权限值为 665,创建目录的缺省权限值为 775。
4.符号链接 ln -s source_path target_path
不管是否在同一个文件系统中,都可以创建链接。在创建链接的时候,不要忘记在原有目录
设置执行权限。链接一旦创建,链接目录将具有权限 777 或 rwx rwx rwx,但是实际的原
有文件的权限并未改变。
第 2 章 使用 find 和 xargs
5.find 命令
find pathname -options [-print -exec|-ok ]
pathname: find 命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。
-print: find 命令将匹配的文件输出到标准输出
-exec command {} ; :find 命令对匹配的文件执行参数 command 所给出的 shell 命令
-ok command {} ; :同上,只是以一种更为安全的模式来执行,在执行每一个命令之前,
会给出提示,让用户来确定是否执行。
find 命令选项:
-name 文件名模式(要用双引号)或 filename :按照文件名查找文件。
-perm xxx :按照文件权限来查找文件。当只是想匹配 u、g 或 o 中某个的权限位而不论
其他的,则其他的位填 0,并在 xxx 前加上一个横杠-。eg:$ find . -perm -007 (查找所
有用户都可 rwx 的文件)
-prune dir :查找文件时希望忽略某个目录,如果同时使用了 depth 选项,那么 prune 选
愚公之资料库系列
1
项将被忽略。
-user username :按照文件属主来查找文件。
-nouser :查找无有效属主的文件,即该文件的属主在/etc/passwd 中不存在。
-group groupname :按照文件所属的组来查找文件
-nogroup :查找无有效所属组的文件,即该文件所属的组在/etc/groups 中不存在。
-mtime -n|+n :按照文件的更改时间来查找文件,-n 表示文件更改时间距现在 n 天以内,+n
表示文件更改时间距现在 n 天以前
-newer file1 [! file2] :查找更改时间比文件 file1 新但比文件 file2 旧的文件。
-type b|c|d|p|l|f :查找某一类型的文件(块设备 字符设备 目录 管道 符号链接 普通文件)
-size [+]n[c] :查找文件长度为 n 块的文件,带有 c 时表示文件长度以字节计,+表示长度
大于 n
-depth :在查找文件时,首先查找当前目录中的文件,然后再在其子目录中查找。
-fstype fs-typename :查找位于某一类型文件系统中的文件,eg:vfat ext2 等等
-mount :在查找文件时不跨越文件系统 mount 点
-follow :如果 find 命令遇到符号链接文件,就跟踪至链接所指向的文件。
-cpio cpio 选项 :对匹配的文件使用 cpio 命令,将这些文件备份到磁带设备中。
6.xargs command 从管道中获取 command 的参数
xargs 常常与 find 命令一起使用,用于取代 find 的-exec 参数。find 命令把匹配到的文件传
递给 xargs 命
令,而 xargs 命令每次只获取一部分文件而不是全部,不像- exec 选项那样。使用-exec 选
项会为处理每一个匹配到的文件而发起一个相应的进程,而不是将匹配到的文件全部作为参
数一次执行;这样在有些情况下就会出现进程过多,系统性能下降的问题,因而效率不高;
而使用 xargs 命令则只有一个进程。
eg: 在/apps/audit 目录下查找所有用户具有读、写和执行权限的文件,并收回相应的写权限:
find /apps/audit -perm -7 -print | xargs chmod o-w
用 grep 命令在当前目录下的所有普通文件中搜索 DBO 这个词:
find . -name "*" -type f -print | xargs grep "DBO"
剩余22页未读,继续阅读
资源评论
EterFoolMe
- 粉丝: 2
- 资源: 137
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功