mkdir /data 创建目录#在根/下创建data目录
-p 递归创建目录
ls list(列表) 列表目录文件 #ls / 列表根目录
-l 长格式
-d 查看指定目录
cd change directory 改变目录路径 #cd /etc
相对路径和绝对路径 略
pwd print work directory 查看当前路径
touch 不存在文件则创建文件否则更新时间戳
cat 查看文件内容
vi
vi 记事本
vim 复杂编辑器
echo 是一个打印输出内容的一个常用命令,配合>或>>,可以为文件覆盖及追加内容。'
>'意思为重定向,会清除文件里所有以前的数据,
'>>'为内容追加,只在文件尾部追加需要的内容,
还有一个较复杂但不常用的命令 printf
例:echo 'I am study linux'>oldboy.txt
cat 查看文件属性
cat >oldboy.txt 覆盖的形式加
[root@bianzhuo data]# cat >oldboy.txt
hahaha
cat >>oldboy.txt追加的形式
cat >>/data/oldboy.txt<<EOF 多行输入 以EOF结尾
echo oldgirl 1>a.txt 2>a.txt 把正确输出和错误输出都放到a.txt
echo oldgirl 1>a,txt 2>&1 同上(更为通用)
echo oldgirl &> a.txt 同上
xargs 从标准输入获取内容创建和执行命令 -n 数字 分组
例子:
cp copy 拷贝文件或目录
不加参数只能拷贝文件 [root@bianzhuo data]# cp oldboy.txt /tmp/
加了参数 可以拷贝目录 [root@bianzhuo data]# cp -r /data /tmp
-r 递归 用于复制
-a 相当于 -pdr 包括r
-p 连同目录的属性一起复制过去,而非默认属性
-d 若文件链接文件,拷过去的是链接的属性而非文件本身的属性
mv move 移动
[root@bianzhuo /]# mv data /root/
rm remove 删除
[root@bianzhuo data]# rm oldboy.txt
rm -f 强制删除
rm -fr 强制删除目录及文件
find 查找 、
-type f 文件类型 d 目录 c 字符类型 b块设备 s socket文件
-name 按文件名查找
-mtime 时间 按修改时间查找 +7 7天以前 7第7天 -7最近7天
find /data -type f -name "oldboy.txt"
find /data -type f -name "oldboy.txt" -exec rm {} \;
find /data -type f -name "*.txt"
find /data -type f -name "*.txt" |xargs
find /data -type f -name "*.txt" |xargs rm -f
grep 过滤需要的内容 -v 排除内容
[root@bianzhuo data]# cat oldboy.txt
hahaha
test
liyao
oldboy
[root@bianzhuo data]# grep -v oldboy oldboy.txt
hahaha
test
liyao
[root@bianzhuo data]# grep oldboy oldboy.txt
oldboy
-B 除了显示匹配的一行之外,并显示该行之前的num行
-A 除了显示匹配的一行之外,并显示该行之后的num行
-C 除了显示匹配的一行之外,并显示该行之前 后的num行
例子:grep 25 -C 5 ett,txt 显示20~~30行数据
head 头 头部
获取前n行的数据 默认前10行
[root@bianzhuo data]# head -2 oldboy.txt
hahaha
test
[root@bianzhuo data]# head -n 2 oldboy.txt
hahaha
tail 尾 作用和head相同 功能相反
获取后n行的数据 默认后10行
alias 查看和设置别名 例子:查看别名直接输入别名即可 设置别名 alias
· [root@bianzhuo data]# alias haha='echo hahaha'
[root@bianzhuo data]# haha
hahaha
[root@bianzhuo data]# alias fuck='rm'
[root@bianzhuo data]# fuck
rm: missing operand
一般是存储在内存里,重启之后alias设置的命令消失,但是也可以设置其保存在文件里
unalias 取消别名 unalias fuck
sed stream editor 流编辑器 实现对文件的增删改查
-n 取消默认输出 p打印
[root@bianzhuo data]# sed -n '20,30'p ett.txt '最有效率的'
20
21
22
23
24
25
26
27
28
29
30
打印最后一行
[root@bianzhuo data]# sed -n '$'p ett.txt
100
sed 替换
sed -i s#oldboy#oldgirl#g a.txt 将oldboy 替换成oldgirl #是分隔符,可以用/@等替换
g与s联合用是,表示对当前行全局匹配替换
s常说的查找替换,用一个字符串替换成另一个
-e 允许多项编辑
-i 修改文件内容
awk 处理日志 一门语言
awk '19<NR &&NR<31' ett.txt NR为行号
将所有后缀为.sh的文件中的oldboy替换成oldgirl
[root@bianzhuo oldboy]# find /root/oldboy -type f -name "*.sh"|xargs sed -i 's#oldboy#oldgirl#g'
将所有后缀为.sh的文件中的oldgirl替换成oldboy
[root@bianzhuo oldboy]# sed -i 's#oldgirl#oldboy#g' `find /root/oldboy -type f -name "*.sh"`