修改系统时间、硬件时间
安装在虚拟机上的CentOS7的时间分为系统时间和硬件时间。二者都修改,重启系统才会永久生效。
修改步骤如下
1.查看当前系统时间 date
2.修改当前系统时间 date -s "2018-2-22 19:10:30
3.查看硬件时间 hwclock --show
4.修改硬件时间 hwclock --set --date “2018-2-22 19:10:30”
5.同步系统时间和硬件时间 hwclock --hctosys
6.保存时钟 clock -w
7.重启系统后便发现系统时间被修改了
添加NTP同步
1.#安装ntpdate
2.yum -y install ntpdate
3.#同步时间
4.ntpdate -u pool.ntp.org
5.#同步完成后,date命令查看时间是否正确
6.date
查看外网IP:
curl cip.cn
curl ipinfo.io
[root@MA2855 ~]# curl cip.cc
IP : 182.204.2.77
地址 : 中国 辽宁 铁岭
运营商 : 电信
数据二 : 辽宁省铁岭市 | 电信
数据三 : 中国辽宁省沈阳市 | 电信
关于curl命令的解释
curl(connect URL)是利用URL规则在命令行下工作的综合工具
#下载curl安装包
wget https://curl.haxx.se/download/curl-7.54.0.tar.gz
#解压到当前目录
tar -zxf curl-7.54.0.tar.gz
#安装与配置
cd curl-7.54.0
./configure
make
make test
make install
#检查是否成功
curl -version
一、文本编辑器vi/vim
vi + 指令(可省略) + 文件名 如:vi HelloWold.java
vi/vim 共分为三种模式,分别是一般模式、编辑模式、命令行模式。用户刚启动 vi/vim,便进入了一般模式。
常用快捷键:
1)复制当前行:在一般模式下,按yy,把光标所在行复制到剪切板。
按p,复制到光标所在行的下一行
2)复制当前行往下n行:在一般模式下,按nyy,把光标所在行往下n行复制到剪切板,如5yy
按p,复制到光标所在行的下面n行
3)在文本文件中查找关键字:在命令行模式下,输入/关键字,回车。如输入:/world 查找单词world
按n跳到下一个
4)删除光标所在的当前行:在一般模式下,按dd,删除当前行
5)删除光标所在的当前行往下n行:在一般模式下,按ndd,删除当前行往下n行
6)撤销上一次操作:在一般模式下,按u
7)显示行号:在命令行模式下,输入:set nu 取消行号::set nonu
二、用户管理
1)添加用户:useradd 用户名
useradd zhangsan
– 1、创建一个用户zhangsan
– 2、在/home目录下创建用户的根目录,名称与用户名相同
– 3、创建一个组 zhangsan(任何一个用户至少属于一个组,创建时如果不指定,则常见一个组,组名与用户名相同,并将用户添加到改组中)
useradd -d /home/ww zhangsan 创建用户的同时指定根目录
2)给用户设置密码:passwd 用户名
passwd zhangsan
3)删除用户:userdel 用户名
userdel zhangsan – 主目录还在
userdel -r zhangsan – 删除用户的同时删除主目录
4)查看用户信息:id 用户名
id zhangsan
5)切换用户:su 用户名
su zhangsan
su root
三、组管理
1)添加组:groupadd 组名
groupadd dev
2)删除组:groupdel 组名
groupdel dev
3)把用户添加组中:gpasswd -a 用户名 组名
gpasswd -a zhangsan dev
4)把用户从组中移除:gpasswd -d 用户名 组名
gpasswd -d zhangsan dev
5)创建用户时指定所属的组(主组):useradd -g 组名 用户名
useradd -g dev zhangsan
四、系统操作命令
1)关机:shutdown
shutdown now 立即关机
shutdown -h xxx 定时关机
shutdown -r now 立即重启
2)重启:reboot 立即重启
3)同步数据库:sync
五、帮助命令
1)用于查看Linux系统手册上的帮助信息: man
man 命令 如:man ls
分屏显示 – 按回车翻一行、按空格翻一页、按q退出查看
2)用来查看内置的帮助命令:help (注意与 --help 的区别)
内建命令和外部命令:
内建命令是 shell 程序的一部分,Linux 系统加载运行时就被加载并驻留在系统内存里的,因此执行速度较快。(如cd)
外部命令是通过额外安装获得的命令,不随系统一起被加载到内容中,运行速度慢但功能强大。(如mv)
使用 type 命令可以查看该命令是内建命令还是外部命令:type
help cd
mv --help
注意:这两个形式的 help 并不能完全等同。前一种通过执行内建的 help 命令查看帮助文档,后一种是通过命令后携带参数 help 的方式来展示所查询命令的帮助文档,需要命令支持 --help。
3)info :与man类似
info 命令的功能基本与 man 命令相似,能够显示出命令的相关资料和信息。
而与 man 命令稍有区别的是,一方面,info 命令可以获取所查询命令相关的更丰富的帮助信息;另一方面,info page 将文件数据进行段落拆分,并以 “节点” 的形式支撑整个页面框架,并将拆分的段落与节点对应,使得用户可以在节点间跳转而方便阅读每一个段落的内容。
六、目录/文件操作命令
1)查看当前所在目录:pwd
2)查看指定目录下所有的子目录或文件列表:ls (指定目录)
ls – 查看当前目录下子目录或文件列表
ls /home – 查看home目录下所有的子目录或文件列表
ls -l /home – 以列表显示
ls -a /home – 查看home目录下所有的子目录或文件列表(包括隐藏文件、虚拟的目录)
3)切换目录:cd 目录
绝对目录:以盘符/开始的目录。 如cd /opt/testDir
~:当前用户的根目录
相对目录:以目录名开始的目录。 如 cd testDir
. :当前目录
…:当前目录的上一级目录
4)创建目录:mkdir 目录名 ( -p 创建多级目录)
5)删除一个空目录:rmdir 目录名
6)创建空文件:touch 文件名(多个用空格隔开)
7)复制文件:cp source(源) destination(目标路径)
cp t1.txt test – 将文件ti.txt复制到test目录下
cp -r test2 test5 – 将test2目录下的文件、文件夹递归复制到test5目录下
8)删除文件或目录:rm 文件名或目录名
rm t1.txt 提示删除文件
rm -f t2.txt 强制删除文件
rm -r test2 提示删除目录(递归方式:先删文件,再删目录)
rm -rf test5 强制递归删除目录(可以删除任何目录,且没有提示)
9)移动目录或文件:mv source(源) destination(目标路径)
mv t1.txt test5
mv test1 test2
mv t1.txt t2.txt 相当于重命名
10)查看文件内容:cat 文件名
cat t4.txt 文件内容一次性全显示
cat -n t4.txt 显示行号
11)分页查看整个文件内容:more [选项] 文件名
more t4.txt 一次性加载文件内容到内存,分页显示,按回车翻一行、按空格翻一页
12)分页查看整个文件内容: less [选项] 文件 (功能更强大)
less -N /etc/profile 显示/etc/profile的内容时显示行号
13)从开头查看部分文件内容: head [选项] [文件]
head -n 5 t4.txt 显示t4.txt的开头5行内容
14)从结尾查看部分文件内容:tail [选项] [文件]
tail -n 5 t4.txt 显示t4.txt的最后5行内容
下面的3个命令一般在脚本中使用
15)echo:输出系统变量或者常量的值到命令行终端。
echo $JAVA_HOME
echo Hello World!
16)>:把前一个查看命令的结果输出到指定文件中:查看命令 > 文件名
•如果目标文件不存在,则新建一个
•如果目标文件存在,则将原来的内容覆盖
ls testDir 查看目录testDir
ls > t1.txt 将结果输出到t1.txt中
简写:ls testDir > t1.txt
cat t3.txt > t4.txt 文件内容的复制
17)>>:把前一个查看命令的结果追加到指定文件中:查看命令 >> 文件名
•如果目标文件不存在,则新建一个
•如果目标文件存在,则在原来的内容后面追加
ls testDir
ls -al >> t2.txt
cat t3.txt >> t4.txt
七、关于日期和时间的操作命令:
1)查看或者设置系统的日期或时间:date
date 查看系统当前的日期、时间
date +%Y 系统当前的年份
date +%m 系统当前的月份
date+%d 系统当前的日期
date ‘+%Y-%m-%d %H:%M:%S’ 按yyyy-MM-dd HH:mm:ss格式显示
date -S ‘2021-1-27 23:30:45’ 设置当前的系统时间
2)查看系统日历:cal
cal:查看当月的日历
cal 2020: 查看指定年份的日历
八、搜索命令
1)find – 关于搜索文件或者目录的命令:find [搜索范围] [搜索标准] 关键字
(标准有name、size、user)
find *.txt 查找当前目录下的所有.txt文件
find e 在当前目录下搜索所有含e的所有文件或目录
find /etc -size -5k 搜索/etc目录下的所有小于5k的文件
find /etc -user zhangsan 搜索/etc目录下的所有者是shangsan的文件和目录
2)locate – 在整棵目录树中搜索文件或目录,根据名称搜索,效率高
3)grep – 搜索过滤命令
搜索命令 |grep [选项] 过滤条件
find *.txt |grep new – 搜索当前目录下所有包含new的.txt文件
查看命令 |grep [选项] 过滤条件
cat t1.txt |grep beijing
九、压缩和解压缩命令
1)操作单个文件:gzip(压缩)、gunzip(解压缩)
gzip 文件名 – 生成.gz的压缩包且删除原来的文件、
gunzip 文件名.gz后缀
2)操作多个文件:zip(压缩)、unzip(解压缩)
zip 目标压缩名称(通常使用.zip压缩包) 文件或目录列表
unzip 压缩包名(.zip) -d 目录路径
3)压缩或解压缩多个目录名:tar [选项] 目标压缩包名称(xxxx.tar.gz) 文件或目录列表
选项:
-c 产生xx.tar.gz打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-z 打包同时压缩
-x 解压xx.tar.gz文件
-C 指定解压到哪个目录
压缩打包:tar -zcvf xx.tar.gz 文件或目录列表
解 压: tar -zxvf xx.tar.gz -C 目录名
十、文件或目录与组
1)修改文件的所有者:chown 新的所有者 文件名
chown 新的所有者:新的组 文件名
chown zhangsan t1.txt
chown zhangsan:dev t1.txt 修改文件到新的所有者:组
chown zhangsan:dev test2 修改目录到新的所有者:新的组
chown -R zhangsan:dev test2 递归修改目录的所有者和所在组
2)修改文件或目录所在的组:chgrp 新的组 文件名或目录名
chgrp dev t2.txt
chgrp -R dev t2.txt
十一、文件或目录的权限管理命令
1)文件或目录的三种权限:读(read)–r、写(write)–w、执行(execute)–x
任何一个文件或目录都有三部分权限:如上图所示
◦第一部分:所有者权限 – u
◦第二部分:同组用户权限 – g
◦第三部分:其他组用户权限 --o
2)修改文件或目录权限:chmod
用+、-、=分别表示给指定用户增加、减少、设置对应的权限
chmod u-w t1.txt 去掉所有者的写(w)权限
chmod g+w t2.txt 赋予同组用户写(w)的权限
chmod o-r t3.txt 去掉其他组读(r)的权限
chmod g=rwx t4.txt 设置同组用户的权限
chmod a-r t5.txt 去掉所有用户(all)读(r)的权限
3)使用数字的方式修改文件或目录权限:
每一个文件都可以用一个数字来表示;
r、w、x
4、2、1
753:rwx、r-x、-wx
7 5 3
用数字的方式修改权限:chmod 753 t6.txt