sort、dirname、添加环境变量、修改主机名、别名IP、静态路由
1.split-按照指定行数或大小分割文件
-l:指定行数
-a:指定文件后缀长度
-d:使用数字作为后缀
-b:指定大小
# 以10行为单位对文件进行分割
split -l 10 /etc/inittab new_
split -l 10 -a 4 /etc/passwd new_
split -l 10 -d /etc/passwd new_
2.sort-让重复的行相邻,默认按照ascii码升序排列
-n:按照数值排列
-r:逆序
-t:指定分隔符,默认是空格
-k:指定区域
-u:unique,唯一的,即将全文重复的行压缩为一行
3.其他处理文本命令
# uniq:压缩相邻行,所以都是先用sort排序,再压缩,-c查看重复次数
dos2unix:将windows上的文件转为linux格式,windows换行符\r\n,
linux换行符\n,一般会把从windows上拿到linux上的脚本进行转换.
diff:查看两个文件的不同;
# tr:translate替换,-d删除内容中的字符;
tee:既显示执行结果也可以把结果保存到文件.
ls|tee -a >/tmp/ls.txt
4.basename、dirname、file、md5sum
basename /home/data/stuhehe_1.jpg # 获取文件名
dirname /home/data/stuhehe_1.jpg # 获取目录路径
file filename # 查看文件类型
md5sum stuhehe_1.jpg > md5.log md5sum计算和校验文件的md5值
echo "asdasda" >> stuhehe_1.jpg
# -c校验,防止文件损坏或被篡改
md5sum -c md5.log
stuhehe_1.jpg: FAILED
md5sum: WARNING: 1 of 1 computed checksum did NOT match
5.添加环境变量
export PATH=$PATH:/root # 暂时生效
# 修改文件中PATH一行,对当前用户永久生效
vim ~/.bash_profile
# 修改 /etc/profile 文件,在文件末尾加上如下两行代码,对所有系统用户永久生效
PATH=$PATH:/usr/local/bin
export PATH
# 最后执行命令
source /etc/profile
# 或执行点命令,使修改生效
. /etc/profile
6.date用于打包
date +%y-%m-%d
date +%Y-%m-%d 完整显示年份
date +%F 显示年月日
date +%H:%M:%S
date +%X 显示时分秒 date +%Y-%m-%d\ %H:%M:%S
# 相当于
date +%Fd\ %X
date +%Fd\ %T # 当前时间加一天
date +%F -d "+1day"
date +%F -d "+24hour"
tar zcf a_`date +%F`.tar.gz a
tar zcf a_$(date +%F).tar.gz a
7.paste-左右方向合并两个文件
# -d:指定分隔符
# -s:后面跟一个文件时,将会把竖着的数据横着显示
案例:把一个文件的奇数行跟偶数行分别对应,中间用=连接
cat hehe.txt
111111
aaaaaa
222222
bbbbbb
333333
cccccc paste -sd '=\n' hehe.txt
111111=aaaaaa
222222=bbbbbb
333333=cccccc
说明:
paste -s hehe.txt
111111 aaaaaa 222222 bbbbbb 333333 cccccc paste -sd '=' hehe.txt # 指定一个分隔符时
111111=aaaaaa=222222=bbbbbb=333333=cccccc paste -sd '=#' hehe.txt # 指定两个分隔符时
111111=aaaaaa#222222=bbbbbb#333333=cccccc
所以我们可以把第二个分隔符换成\n.
# sed模式空间
sed 'N;s#\n# #g' hehe.txt
8.权限
# 某用户对某文件有读写权限,能不能删除或修改文件,取决于该文件上级目录的权限;
# 默认权限是安全界限的临界点,工作中尽量给这个临界点,或者小于临界点.
groupadd incahome
useradd oldboy -g incahome
usermod -g incahome oldboy
9.定时任务
创建定时任务相当于在编辑这个文件
cat /var/spool/cron/root
* 23,00-07/1 * * * /bin/bash /usr/loacl/nginx/restart.sh
上面的例子并不表示晚上23点和早上0-7点之间每隔一小时重启nginx,因为第一列你写了*
想要每分钟都执行这个脚本,第一列应该写00
10.inode被填满的企业案例:
centos5 sendmail临时队列目录 /var/spool/clientmqueue
centos6 postfix临时队列目录 /var/spool/postfix/maildrop
执行定时任务时默认会给root发邮件,如果邮件服务不开就会把邮件发到上述目录;
当定时任务结尾不加>/dev/null 2>&1的时候,上述目录就会存在大量小文件;
解决办法:
a.开启邮件服务(一般不会这么做);
b.在定时任务后面加上输出重定向.
删除小文件的办法:
cd /var/spool/postfix/maildrop;ls|xargs rm -f
使用top发现一个进程占用CPU高,使用命令strace -f pid,追踪分析原因.
11.centos下使用dig命令
yum -y install bind-utils
dig @8.8.8.8 www.baidu.com +trace
# 使用命令解析域名
nslookup
host
ping
12.centos6修改主机名的规范步骤
a.hostname
b.vi /etc/sysconfig/network
c.vi /etc/hosts
# 如果用setup--DNS设置修改主机名,则永久生效(命令行不生效)
# 只是修改了两个文件,还得用hostname修改一下
13.linux网卡支持多个ip地址
# 别名IP,也称虚拟IP
ifconfig eth0:0 192.168.165.7/24 up
# 网卡后面冒号跟的数字范围0-254
ifconfig eth0:0 down
# 用ip这个命令添加:
ip addr add 192.168.165.8/24 dev eth0:1
14.已知一个端口,查看端口对应的服务
lsof -i :22
netstat -tunlp | grep 22
t:TCP,
u:UDP,
n:NUMBER,
l:LIST,
p:程序名
15.添加静态路由
ip10.10.10.10/24,网关10.10.10.1,需要增加路由:到网段192.168.0.0/24,通过ip10.10.10.2出去
route add default gw 10.10.10.1
route add -net 192.168.0.0/24 gw 10.10.10.2
sort、dirname、添加环境变量、修改主机名、别名IP、静态路由的更多相关文章
- Linux 修改主机名 和 ip 映射关系
1. 修改主机名 vim /etc/sysconfig/network NETWORKING=yes HOSTNAME=hadoop 2. 修改主机名和IP的映射关系 vim /etc/hosts 1 ...
- 二十二、utl_inaddr(用于取得局域网或Internet环境中的主机名和IP地址)
1.概述 作用:用于取得局域网或Internet环境中的主机名和IP地址. 2.包的组成 1).get_host_name作用:用于取得指定IP地址所对应的主机名语法:utl_inaddr.get_h ...
- CentOS 7 环境下修改主机名
本篇文章简单介绍在CentOS 7的环境下更改主机名的方法步骤. 首先我们开启虚拟机,用root账户进行登陆,并且打开终端.我们看到默认的主机名是我们新建虚拟机时自定义的名称. 接下来我们用命令更改主 ...
- RHEL修改主机名和IP
1, 修改主机名 vi /etc/sysconfig/network NETWORKING=yes HOSTNAME=NEWHOSTNAME #修改该值作为主机名,如:NEWPC ...
- Linux CentOS7.0 (02)修改主机名和ip地址
一.主机名修改 1.查看命令 在CentOS中,有三种定义的主机名:静态的(static),瞬态的(transient),和灵活的(pretty). "静态"主机名也称为内核主机名 ...
- linux centos7.5修改主机名和ip永久生效
以centos7.5为例 1.修改主机名 [root@localhost ~]# hostname localhost.localdomain[root@localhost ~]# hostname ...
- centos7修改主机名和ip映射
1.修改主机名:命令:/etc/hostname文件输入:HOSTNAME=node3想永久修改,应该修改配置文件 /etc/sysconfig/network. 输入:NETWORKING=yes ...
- Centos 7环境下修改主机名
步骤如下: 一.首先把虚拟机打开,用root账户进行登录后打开终端 二.我们看到我们虚拟机名称是默认的主机名. 三.用vi编辑器编辑etc目录下的hostname文件,输入“vi /etc/hostn ...
- 大数据学习——修改主机名和ip的映射关系
vi /etc/hosts 192.168.1.101 itcast
- 在CentOS 7上修改主机名的方法
这次我们来讲解一下如何在CentOS 7环境上修改主机名 1.从VMware上登录CentOS 7的虚拟机,并以root用户登录. 2.查看未修改前的主机名 1>.我们可以通过文件hostnam ...
随机推荐
- Python: simple drawings
import cv2; # OpenCV Python import numbers; import numpy as np; import math; import matplotlib; impo ...
- centos7 安装显卡驱动方法
方法一: 首先需要添加一个第三方的源ELRepo.这个源支持RED HAT系的Linux系统,主要是提供一些硬件的驱动程序.这个源的主页如下: http://elrepo.org/tiki/tiki- ...
- Python中的并发
目录 Python并发 并发三种层次 协程 生成者消费者 新关键字 网络io 线/进程 例子 线程池 进程通信 并发池 future对象 executor对象 参考 Python并发 并发三种层次 个 ...
- Git for Windows 工具的使用(一)
如果你还不知道什么是Git,只知道GitHub,但是还不会用,我想这个教程会帮助你. 前言 鉴于网上目前的教材都太落后,GitHub for Windows已经更新了多个版本,好多界面都发生了变化,所 ...
- LayoutInflater的用法
Instantiates a layout XML file into its corresponding View objects. It is never used directly. Inste ...
- NetCore 2.0 应用程序在centos 7上通过docker发布
一 安装netcore 2.0 SDK 在centos 上面安装netcore 2.0 与window上面是不太一样的,注意,linux是不支持同时安装两个版本的.netcore SDK的,由于我之 ...
- 链表中倒数第k个结点 【微软面试100题 第十三题】
题目要求: 输入一个链表,输出该链表中倒数第k个结点.链表的倒数第0个结点为链表的尾指针. 参考资料:剑指offer第15题 题目分析: 1.两个指针,第一个先走k步,然后两个指针同时走,直到第一个走 ...
- MyBatis拦截器打印不带问号的完整sql语句方法
/* Preparing: SELECT * FROM tb_user WHERE id = ? AND user_name = ? 目标是打印:SELECT * FROM tb_user WHER ...
- python_字符串,元组,格式化输出
一.字符串 1.字符串是有成对的单引号或者双引号括起来的.例如:name="张三",sex="女" 2.字符串的索引是从0开始的 3.字符串的切片 a.单个字符 ...
- day01_14.遍历数组
<?php $a = array('a','b','c'); print_r($a); ?> 输出结果:Array ( [0] => a [1] => b [2] => ...