欢迎访问我的博客,你的支持,是我最大的动力!

会用到的一些shell命令

Linux 小马奔腾 88℃ 评论
目录:
[显示]

这里罗列一些平常会用到的一些linux命令,备查

find 查找某个时间段内修改过的文件

说明:

find {path} -mtime {days}
若days为-1,代表24小时内修改过;
若days为 1,代表24~48小时范围内修改过;
若days为+1,代表48小时之外修改过;
特别需要注意的是,这是以当前时间为起点开始计算,24小时为跨度的
find {path} -newerXY {variable}
其中X可为a,c,m,t,即atime 访问时间,ctime 改变时间,mtime 修改时间,
其中t 代表绝对时间,格式为:yyyy-MM-dd hh:mm:ss
# 查找今天修改的文件
find {path} -newermt date +%F -type f
# 反选
find {path} ! -newermt date +%F -type f
批量替换某目录下所有文件中的字符串

示例:

# 批量替换nginx配置文件中某ip地址
sed -i "s/10.10.0.100:/192.168.0.10:/g" grep "10.10.0.100:" -rl ./*.conf
创建指定uid gid的用户
# 创建gid为500的组www
groupadd -g 500 www
# 创建uid为500且用户组为www的用户wwwuser
useradd -u 500 -g www wwwuser
磁盘挂载 xfs格式
mkdir /data
mkfs -t xfs /dev/vdb
# blkid
echo "/dev/vdb /data xfs defaults 0 0">>/etc/fstab
mount -a

两个git命令
git remote -v
# 添加-v 可显示完整的远端地址
git remote show origin
# 显示更详细的信息

rysnc 文件同步
当ssh端口不是默认的22时,需要添加 -e 参数,如
rsync -avz --bwlimit=4096 -e 'ssh -p 22022' --exclude=jail 10.10.1.10:/data/ /data/
# --bwlimit=4096 限制速度为 4MB/s
# -e 使用额外的ssh参数

示例:

有一组服务器,服务器一一对应,需要将对应服务器上的文件使用rsync同步,配合polysh,可使用如下脚本
同步远端/data目录下文件到本地/data目录 排除远端/data/logs目录 并限制传输速度

执行:nohup >> rsync.log bash /root/rsync.sh &

注意,shell脚本中将输出内容赋值给一个变量时,双引号会保留换行,如 "$a" ;若不使用双引号,则换行会被忽略,所有内容输出到一行,如 $a

单引号会保留原样,$会原样输出

转载请注明:轻风博客 » 会用到的一些shell命令

喜欢 (0)or分享 (0)