Linux centos7 常用命令 记录1:
1.在/opt目录下创建bdp/bw/day02目录,用一条命令创建
# mkdir -p bdp/bw/day02
2、切换到day02目录下,创建一个person.txt文档,用vim编辑器添加任意十行数据并保 存退出
# >person.txt
# vim person.txt ( i/o 进入编辑 | esc 退出编辑 | :进入命令行 | wq 保存并退出 | !强制执行)
3、将当前日期追加到文档结尾
# date >> person.txt
cal 日历
Trailing backslash 反斜杠追尾 \
4、分别用cat/grep查看文档中的全部内容,查看文档住的前三行内容,查看文档中的后五行内容
过滤带空格的字符串:
# cat person.txt | grep 11月' '10日
# cat person.txt | grep 11月 10日
# head -3 person.txt
# tail -5 person.txt
5、显示当前的路径,并显示当前目录下的所有内容
# pwd
# ls -l ( ls:显示所有 ll 列表显示所有)
6、当前目录下复制person.txt文件并将复制文件重命名为man.txt,
# cp person.txt man.txt 创建副本man.txt
# cp -r dir /root 拷贝文件夹dir到root目录
# mv -i person.txt man.txt 重命名
# mv person.txt /root 剪切到root目录
# find / -name person.txt 在/目录下查找名为xx的文件
7、将man.txt文件移动到家目录下,执行成功后删除文件
# mv man.txt /root
8、使用more分屏显示文件内容
more -num person.txt -num 美屏行数
9、使用groupadd新增两个组
# groupadd mojioa
# groupadd xiejiao
10、使用cat命令查看所有组
]# cat /etc/group
11、删除所有组
#cat /etc/group |grep xiejiao
#groupdel xiejiao
12、查看person.txt的权限,将权限设置为777(必须了解777的含义)
# ls -l person.txt
# chmod 777 person.txt
13、创建新用户,用户名:student 用户密码:111222
# useradd student
# passwd student
14、切换到student用户中,查看当前用户,并在student中执行1-9步操作
# su student
15、切换到root用户,并删除student用户
# userdel -r student
# cd /home
# rm -rf student
# groupdel student
# compgen -u
16:使用命令显示系统当前时间
# date
17: 使用date -s 修改系统的当前时间
# date -s 20:20:30
# date -s 2018-5-5
# yum install ntp
# hwclock -w 写入bios 防止重启失效
# nptdate npt.api.bz
18: 修改用户 lisi 的主组为1907A,附组为 mojiao 并查看
# usermod -g 1907A lisi
# usermod -G mojiao lisi
# groups lisi
# cat /etc/group | grep 1907
# cat /etc/passwd
19将桌面的aa,bb两个文件夹打包(包名:gg.tar.gz)
# tar -czvf aa.tar.gz aa
# tar -zxvf aa.tar.gz -C 解压到的目录
-c 创建一个tar归档 (打包)
-z 使用 gzip 来压缩/解压 tar文件 (压缩/解压)
-x 解压 tar.gz 压缩包 (解压)
-v 显示归档或解档的进度 (详情)
-f 当与 -c 选项一起使用时, 用于指定 生成的文件名;
当与-x选项一起使用时,则解包指定的归档。
该参数一定放在所有参数的最后面。
-r:向压缩归档文件末尾追加文件
20、关机
#shutdown -h now
#halt
#reboot
21网络配置
# vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO="static"
ONBOOT="yes"
#IP
IPADDR=192.168.179.131
#网关
GATEWAY=192.168.179.2
#DNS
DNS1=192.168.179.2
DNS2=111.11.11.1
#service network restart
# vim /etc/hosts
192.168.179.131 liuyuan
22 重装jdk
# rpm -qa | grep -i java
# rpm -e --nodeps tzdata-java-2018c-1.el7.noarch
# vim /etc/profile
>>
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_261
export PATH=$PATH:$JAVA_HOME/bin
:wq
# source /etc/profile
# java -version
23 vim命令行:复制一段 数值yy 从几行复制到几行
:set nu 显示行号
5 (shift+g) 光标跳到第五行
2yy 复制光标下两行
p 粘贴
cc 修改
40dd 删除40行
:%s/ //g 去^M
:%s/123//g 去123
24.查看某个用户组下的所有用户
- 用户在/etc/passwd
- 组 在/etc/group
- 故获得特定组下所有用户
- grep '组名' /etc/group 获得组号
- grep '组号' /etc/passwd 获得组下所有用户
25.创建 a.txt 的软连接文件 b.txt.soft.link
ln -s /etc/a.txt /etc/b.txt.soft.link
创建 b.txt 的硬链接文件 b.link
ln b.txt b.link
硬链接分享的是内存
软连接分享的是文件
26.创建文件/etc/a.txt,设置tom可以读写,jerry只能读,其他用户不能做任何操作。
touch /a.txt
chown tom:yizu a.txt
ll /etc/a.txt(查看文件的详细信息)
chmod 640 a.txt
ll /etc/a.txt(查看文件的详细信息)
27.vim 在光标下插入新行
o
28延迟重启
sleep 5; reboot
shutdown -H 5 min
关机
poweroff
shutdown -h now
halt
29查看系统架构
uname -a
uname -m i686 :32位 X86_64 :64位
30配置环境变量
1、新建/etc/profile.d/my_env.sh 文件
sudo vim /etc/profile.d/my_env.sh
2、添加如下内容
#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_261
export PATH=$PATH:$JAVA_HOME/bin
3、环境变量生效
[root@hadoop100 ~] $ source /etc/profile
31.Redis在linux的安装
# tar -zxvf redis-4.0.9.tar.gz -C /opt/module
# cd /opt/module/redis-4.0.9
# make (检测是否安装c++)
# yum install gcc-c++
# make MALLOC=libc (编译)
# make install
# cd /usr/local/bin (增加了可执行命令程序)
# vim /myredis/redis.conf
注释掉127.0.0.1
protected-mod no 关闭掉redis的保护模式
daemonize yes,支持redis后台运行
# cd /opt/module
# redis-server /redis-4.0.9/redis.conf
# redis-cli
# ps -ef | grep redis
# kill -9 进程
# redis-cli shutdown
redis-benchmark性能如何(服务启动起来后执行)
32redis的key命令操作
1)通命令切换到第二个数据库
select 2
2)在 redis 中创建一个 key 并设置值为value。
set key value
3)检测key是否存在
exists key
get key
4)查找所有以k开头的键值
keys k*
5)检测一下key的类型
type key
6)把key移动到第一个数据库,检测是否移动成功
move key 1
7)切换到key所在的数据库,为给定 key 设置过期时间,以秒计,过期后检测key是否存在.
(Expire KEY_NAME TIME_IN_SECONDS)
expire key 60
不存在
8)创建新key,并且删除key
DEL key
9)看一下第一个数据库的key的数量
select 0
dbsize
10)为当前连接设置一下连接名称
client setname liu
11)获取(5)命令为连接设置的名字
client getname
12)返回所有连接到服务器的客户端信息和统计数据
client list
13)清空当前数据库
flushdb 当前
14)清空所有的数据库
flushall 所有数据库的key
10)通过命令在后台异步(Asynchronously)保存当前数据库的数据到磁盘
bgsave
11)停止所有客户端
shutdown
12)切换数据库操作
select *
13)使用后台启动redis。
# redis-server redis.conf
14)使用zset数据类型,存储以下数据(姓名,成绩)
zadd myzset 99 wangjiayv 80 wulei 83 liuchang 96 aofeifan 79 guchao
15)使用命令根据成绩从 小到大/大到小 排序展示。
zrange myzset 0 -1 withscores
zrevrange myzset 0 -1 withscores
16)使用命令查询出成绩最高的前三名的数据。
zrevrange myzset 0 2 withscores
17)清空当前数据库。
flushdb
18)设置客户端连接名称为cli1,并且获取当前客户端连接的名称。
client setname cli1
client getname
19)使用命令设置loglevel(日志级别)为debug,并且使用命令获取loglevel的值。
config set loglevel debug
config get loglevel
20)使用命令开启事务,设置key为xiaoming的值为40,key为xiaohong的值为0,并提交事务。
multi
set xiaoming 40
set xiaohong 0
get xiaoming
get xiaohong
exec
21)使用命令开启事务,设置key为name的值为张三,对name这个key使用incr命令,并提交事务。
(incr 命令将 key 中储存的数字值增一。如果 key 不存在,那么 key 的值会先被初始化为 0 ,然后再执行 incr 操作。)
multi
set name zhangsan ((error) ERR value is not an integer or out of range)
incr name
exec
22)查询当前数据库的keys的数量
keys *
dbsize
23)通过score取出20-30的产品
zrangebyscore myzset 20 30
24)将java和python移除
zrem myzset java python
25)统计总数
zcard myzset
26)将java加5分
zincrby myzset 5 java
27)统计20-50之间有多少个
zcount myzset 20 50
28)java在set中处于第几个位置,从0开始
zrank myzset java
29)java有多少分
zscore myzset java
incrby age -2 加上
decr age 1 自减
setnx 不存在时建立
定时间
help @String
setex name zhangsan 10