cp
作用
拷贝
格式
cp [option]... SOURCE... DIRECTORY
示例
cp -a /xx/xx /xxx/xx
option
-r|-R
递归拷贝
-a
相当于-dpr,保留所有(属性权限链接)且递归拷贝
-d
保留链接
-p
保留属性权限
-f
覆盖
-i
覆盖前询问
-l
只生成链接文件
mkdir
作用
新建文件夹
格式
mkdir [option]... DIRECTORY...
示例
rm -rf /xx/xx
option
-p
递归创建
-m
设置目录访问权限mode,如777
rm
作用
删除
格式
rm [option]... FILE...
示例
rm -rf /xx/xx
option
-f
强制删除
-r
递归删除
-i|-l
删除前确认|删除超过3个文件以下或递归删除需要确认
-d
删除空目录
-v
列出详细信息
head
作用
标准输出文本头部内容
格式
head [option]... FILE...
示例
head -n 1
option
-n N
输出前N行,默认是前10
-c N
输出前N字节
sed
作用
流编辑器,stream edit,用于处理文本文件
格式
sed [option]... 'COMMAND' [input file]... 多个COMMAND用;分隔,如1p;2p;3p
示例
sed "s:^:`pwd`/:"
option
-n
不打印默认输出的内容, 打印ls和sed的内容: ls | sed -n 1p 只打印sed输出的内容: ls |sed 1p
-e script
添加脚本到程序运行列表,可以多个 -e s/x/y/ -e s/y/x/ -e 's/x/y/;s/y/x/'
-f script-file
添加脚本文件到程序运行列表
--follow-symlinks
直接修改文件时跟随软链接
-i[SUFFIX]|--in-place[=SUFFIX]
直接修改文件(指定扩展名就备份文件) 备份passwd为passwd.bak后删除passwd第一行:sed -i.bak 1d passwd
-l N
每行长度为N,超出换行
-r
在脚本中使用扩展正则表达式
-s
将输入文件视为各个独立的文件而不是一个长的连续输入
-u
从输入文件读取最少的数据,更频繁的刷新输出
script COMMAND
追加 [N]a\
在第N行新增下一行内容,不写N默认为每一行
ls | sed 3a\hello
在第3行新增下一行打印hello
ls | sed a\hello
在每一行都新增下一行打印hello
替换 [N]c\
替换第N行内容,不写N默认为每一行
ls | sed 3c\hello
替换3行为hello
ls | sed c\hello
替换每一行为hello
删除 [N]d
删除第N行,不写N默认为每一行
ls | sed 3d
删除第3行
ls | sed d
删除每一行
插入 [N]i\
在第N行往上插入一行内容,不写N默认为每一行
ls | sed 3i\hello
在第3行前插入一行hello
ls | sed i\hello
每一行前插入一行hello
打印 [N]p N,Np /pattern/p '\%%p'
选择性打印内容
ls -n | sed 1p
打印第一行
ls -n | sed 1,2p
打印第1~2行
ls -n | sed /^h.*o$/p
打印包含h开头o结尾内容的行
ls -n | sed '\%hello%p'
打印包含hello的行
查找替换拼接 [N]|[N,N]s/regexp/replacement/[flags] [N]|[N,N]s:regexp:replacement:
查找第N行|从第N~N行匹配regexp的部分替换为replacement
ls | sed 3s/hello/world/
查找第3行hello部分替换为world
ls | sed 1,3s/hello/world/
查找第1~3行hello部分替换为world
ls | sed -n 1,3s:^:`pwd`/:
查找第1~3行拼接当前目录到文件名前面 即列出当前目录下1-3行文件的绝对路径
ls | sed -n 1,3s:hello:world:
查找第1~3行hello部分替换为world
ls | sed -n 1,3s:^h.*o$:world:
查找第1~3行匹配h开头o结尾部分替换为world
标记 :
为b,t,T分支做位置标记,记为label 如 :a 即是label a代表当前:指向的位置
换行 N
追加一行到pattern能操作的范围 如 N;s/x/y/ 就是把1,2行当一行,3,4当一行
循环跳转 t
跳到label位置继续执行s命令,直到最后一行
多行循环执行 :a;N;s/x/y/;ta
开始位置标记为a N;s/x/y/:每2行作为一行执行s命令置换x为y t跳转到a位置执行N;s/x/y/ 循环直到最后一行
ls | sed -n :a;N;s/\n//;ta
多行合并为1行
ls
作用
展示目录文件信息
格式
ls [option]... [FILE]...
示例
ls -l /xx/xx
option
-l
长格式显示 列表说明: drwxr-xr-x 36 root root 4096 Oct 14 17:15 repository 第一个字符是文件类型:-普通文件,d目录,p管理文件,l链接文件,b块设备文件,c字符设备文件,s嵌套字文件 rwxr-xr-x: 用户权限用户组权限其他用户权限 36:对文件是链接数,对目录是子目录数 root root:所属用户 所属用户组
-1
每行只输出文件名
ls | sed "s:^:`pwd`/:"
每行只输出文件名的绝对路径
-a
展示所有,包括.开头文件
-A
展示所有,包括.开头文件,忽略.和..
-d
展示目录且不展开,默认是当前目录.
-r
倒序
-i
显示目录索引序号
-R
递归展开目录
-F
目录以/结尾
-h
显示文件大小
-b
不可输出的字符用反斜杠+编号显示
-c
输出文件节点修改时间,并以此排序
-s
输出文件大小
-t
时间排序
-u
访问时间排序
-S
文件大小排序
-B
不输出~结尾文件
-s
输出文件大小
ln
作用
链接指令 软链接:路径快捷方式 硬链接:备份
格式
ln [option]... TARGET... DIRECTORY
示例
ln -s /xx/xx /xxx/xx
option
-s
创建软链接
-r
与-s结合,创建相对路径软链接
-b
删除覆盖目标文件之前的备份
-d|-F
建立目录的硬链接
-f
强制建立,不管文件或目录是否存在
-i
强制建立前询问
-n
链接目录视为一般文件
-S|--suffix=SUFFIX
修改字尾备份字符串,预设是~
-v
显示每个链接文件名
-V METHOD
指定备份的方式
-P|--physical
硬链接重定向到软链接(默认指令)
chmod
作用
权限赋予
格式
chmod [option]... [MODE,...] FILE...
示例
chmod -R a+rwx,u+rwx,g+rwx,o+rwx /xxx/xxx
option
-R
给目录下所有文件(递归)授予权限
-c
权限有改动才显示更改动作
-f
不显示错误信息
-v
显示执行信息
权限mode [ugoa...][[+-=][rwxX]...][,...]
777
所有权限,即 rwxrwxrwx 前3个是用户权限,中间3个是用户组权限,后3个是其他用户权限
u
为文件所属用户设置权限
g
为文件所属用户组设置权限
o
为文件所属用户其他以外的人设置权限
a
包含上面三者
+
增加权限
-
取消权限
=
唯一设定权限
r
可读,二进制:100
w
可写,二进制:010
x
可执行,二进制:001
---
二进制:000,十进制:0
--x
二进制:001,十进制:1
-w-
二进制:010,十进制:2
-wx
二进制:011,十进制:3
r--
二进制:100,十进制:4
r-x
二进制:101,十进制:5
rw-
二进制:110,十进制:6
rwx
二进制:111,十进制:7
groupadd
作用
新增用户组
格式
groupadd [option]
示例
groupadd -g 8888 gadmin
option
-g
指定组id
-p
使用加密过的密码
-r
建立系统工作组,id必须小于500
-exec
作用
执行命令
格式
exec [-cl] [-a name] [command [argument ...]] [redirection ...]
示例
find / -name "t*" -exec ls -l {} \;
option
-c
在空环境中执行指定的命令
-l
在传递给command的第零个arg的开头放置一个破折号
-a
Shell将name作为第零个参数传递给command
useradd
作用
新增用户
格式
useradd [option]
示例
useradd admin -g gadmin -G root
option
-g
指定用户所属组
-G
附加群组
-d
指定用户登入的起始目录
-u
指定用户id
-r
建立系统账号
-s
指定用户登入后使用的shell
-p
设置密码
chown
作用
设置文件用户和用户组
格式
chown [option]... [OWNER][:[GROUP]] FILE...
示例
chown -R admin:gadmin /xxx/xx
option
-R
递归修改
-c
显示更改部分信息
-f
忽略错误信息
-h
修复符号链接
-v
显示详细处理信息
-H
命令行参数是指向目录的符号链接,则遍历它
-L
遍历遇到的每个指向目录的符号链接
-P
不遍历任何符号链接(默认)
export
作用
设置环境变量
格式
export [option] [name[=value] ...]
示例
export M2_HOME=/xx/xx
option
-f
指向函数
-n
删除变量
-p
显示所有变量