grep 过滤内容,筛选内容
按行输出
grep [选项] 内容 文件
–color=auto 过滤的内容显示颜色(sentos6 需要加)
-v 取反
-i 不区分大小写
-E 同时过滤多个字符串 grep -E “a|b” log.txt
egrep 同时过滤多个字符串 egrep “a|b” log.txt
-o 只输出匹配内容 grep -o a log.txt
-n 过滤出内容,在文件中的行号 grep -n a log.txt
此处过滤的点代表任意一个字符grep -n ‘.’ log.txt 显示所有行号
-w 按单词过滤内容 grep -w ‘a’ log.txt
touch创建文件
touch files1
touche files1 files2 files3
touch files{1…100}
seq 序列
seq 5 输出1-5
seq 2 5 输出2到5
seq 2 2 10 步长为2 从2到10
seq -s " " 5 指定空格为分隔符
seq -w " " 5 补齐位数
alias 别名
[别名]=[指令名称]
- 防止危险命令使用,做提醒
alias rm=‘echo “请不要使用rm命令 使用mv代替”’
- 提高效率 好记
alias net =‘cat /etc/sysconfig/network-scripts/ifcfg-etho’
如何不使用别名?
- 命令全路径执行 /bin/rm a
- 命令开头加反斜线 \rm a
- 取消别名 unalias ls
- 别名永久生效
全局环境变量文件
/etc/profile
/etc/bashrc
用户环境变量文件
~/.bash_profile
~/.bashrc
重定向
- 标准输出重定向,用数字1表示
>或者1>
echo oldboy >oldboy.txt命令执行顺序
- 输出oldboy
- 清空oldboy.txt
- 把oldboy 写入到oldboy.txt
- >> 或 1>> 标准追加输出重定向
清空文件命令
- >oldboy.txt
- /dev/null>oldboy.txt
- 标准错误输出重定向,用数字2表示
dddd 2>errors.txt
>>或2>>标准错误追加输出重定向
# 希望同一个文件收集正确和错误的信息
# 1. ca oldboy &>>oldboy.txt
# 2. cho oldboy 1>>oldboy.txt 2>&1
# 3. ech oldboy >>oldboy.txt 2>>oldboy.txt
[root@leijia /]# ca oldboy &>>oldboy.txt
[root@leijia /]# cat oldboy.txt
oldgoy
oldgirl
aaa
bbb
-bash: ca: command not found
- 标准输入重定向,用数字0表示
- 标准输入重定向数据追加0<<或<<
[root@leijia /]# cat <<EOF
> ddd
> fff
> ccc
> eee
> EOF
# 大段文本重定向输入
[root@leijia /]# cat >aaa.txt <<EOF
> sdaf
> asdf
> sdaf
> sdaf
> EOF
[root@leijia /]# cat aaa.txt
sdaf
asdf
sdaf
sdaf
uniq去重
去除相邻行重复的数据
cat >ip.txt <<EOF
> 10.0.0.1
> 12.1.1.2
> 127.0.0.1
> 10.0.0.1
> 10.0.0.1
> EOF
[root@leijia ~]# uniq ip.txt
10.0.0.1
12.1.1.2
127.0.0.1
10.0.0.1
-c 参数
uniq -c ip.txt相邻的相同行去重并且计数