基本命令
1.mkdir
-p 创建多层目录
2.ls list
-l 显示详细信息
3.cd
进入到目录中
4.pwd
print working directory 显示当前所在位置
5.touch
创建文件 修改文件的时间戳
6.vi编辑文件
1.vi /data/oldboy.txt
2.按i 进入到编辑模式
3.按esc退出编辑模式
4.:wq 保存退出
5.:q! 强制退出不保存
复制 yy
粘贴 p
删除、剪切 dd
撤销 u
把光标所在行到文件最后一行删除 dG
移动光标
把光标移动到文件的最后一行 G
把光标移动到文件的第一行 gg
批量删除 第1个里程碑-按ctrl + v 进入批量编辑模式 第2个里程碑-选择 按箭头 第3个里程碑-删除 d
vi/vim
nu==== number
:set nu 显示行号
:set nonu 取消显示行号
7.cat 显示文件内容
cat /data/oldboy.txt
8.cp copy 复制
cp /data/oldboy.txt /tmp/
9.man 查询命令的帮助
10. mv move 移动
把 /data 移动到 /root目录下面
mv /data/ /root/
11. rm remove 删除文件或目录
为了防止误删 ,可先将文件移动到tmp,以后再删
-f 强制删除不提示
rm -f data
-r 递归删除目录
rm -r data
结合
rm -rf data
12. find 查找
find /root/ -type f -name "oldboy.txt"
find /root/ -type f -name "*.txt"
13. grep 三剑客老三 擅长 过滤
在文件中过滤
显示出文件中 想要的
grep "oldboy" /data/test.txt
不想要的内容
grep -v "oldboy" /data/test.txt
-v 排除
14. sed 三剑客老二 擅长取行
sed默认输出文件的每一行
sed -n '20p' ett.txt
-n 取消默认输出
-n '20p'
-n '20,30p'
15. head
显示文件的前几行 默认显示文件的前10行
-n2 === -2 显示文件的前2行
16. tail
显示文件的最后几行 默认显示文件的后10行
-n1 === -1 显示文件的最后1行
-f 实时显示文件的更新
17. tar 创建解压查看压缩包
创建一个压缩包
tar zcf /tmp/etc.tar.gz /etc
z=== 通过gzip软件进行压缩
c=== create 创建
f=== file 指定压缩包
18.查看压缩包内容
tar tf /tmp/etc.tar.gz
t === list 显示压缩包内容
19.解压
# cd /tmp/
]# tar xf etc.tar.gz
20.解压到指定位置
# tar xf etc.tar.gz -C /mnt/
21.|(管道)与|xargs(管道xargs)的区别
find |xargs ls -ld##把前一个命令的结果,通过管道传递给后面的命令(ls -ld),传递的是文件名
find | 命令 ##把前一个命令的结果,通过管道传递给后面的命令,传递的是普通的文本,文字,字符串
参考:http://blog.51cto.com/lidao/1927347
特殊符号:
1. * 任何 所有 *.log *.txt
2. .. 当前目录的上一级目录
3. . 当前目录
4. | 管道
find + |xargs
5. > 重定向符号 先清空文件的内容 然后追加
6. >> 追加 把信息追加到文件的结尾
系统优化
1.虚拟机可以联网
ping baidu.com
2.Linux无法上网排查过程
1、查看是否能上网
2、验证是否DNS 域名解析 域名--->ip地址
ping 233.5.5.5(公网ip)
3、网关-检验你的网络配置(网卡 虚拟机vmwarexxx)是否有问题
ip r
ping 10.0.0.2
4、检查网络连接
3、Linux下面安装软件
1、通过yum安装软件 (需要联网)
1)更改系统的yum源 (阿里云)
#https://opsx.alibaba.com/mirror 来源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
2)安装常用软件
yum install -y tree(树目录) bash-completion(自动补全) wget vim(编辑)
2、使用CentOS7.4 光盘镜像(连不上网络)
#mount 给/dev/cdrom 创建一个入口 /mnt
mount /dev/cdrom /mnt
# cd /mnt/
# ls -l /mnt/Packages/ Display all 3895 possibilities? (y or n) # ls -l /mnt/Packages/bash-completion-2.1-6.el7.noarch.rpm -rw-rw-r--. 2 root root 87272 Jul 4 2014 /mnt/Packages/bash-completion-2.1-6.el7.noarch.rpm # rpm -ivh /mnt/Packages/bash-completion-2.1-6.el7.noarch.rpm Preparing... ################################# [100%] package bash-completion-1:2.1-6.el7.noarch is already installed # ll /mnt/Packages/telnet- telnet-0.17-64.el7.x86_64.rpm telnet-server-0.17-64.el7.x86_64.rpm # ll /mnt/Packages/telnet-0.17-64.el7.x86_64.rpm -rw-rw-r--. 2 root root 65632 Aug 11 2017 /mnt/Packages/telnet-0.17-64.el7.x86_64.rpm
rpm -qa 查看是否有该命令
关闭SElinux
永久 修改配置文件 重启服务器之后生效
rpm -qa
# enforcing - 已开启 正在运行
# permissive - selinux关闭 警告提示
# disabled - 彻底关闭
SELINUX=enforcing-----》SELINUX=disabled
修改配置前先备份
cp /etc/selinux/config /etc/selinux/config.bak
#快捷键:esc + .(点) 使用上一个命令的最后一个东西(参数)
1、修改
sed 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config 显示修改结果(实际没有修改)
sed -i 's#SELINUX=enforcing#SELINUX=disabled#g' /etc/selinux/config (实际修改)
cat /etc/selinux/config 查看结果
2、临时 重启服务器之后失效
[root@oldboyedu-s8 ~]# getenforce
Enforcing
[root@oldboyedu-s8 ~]# #显示当前selinux
[root@oldboyedu-s8 ~]# #显示当前selinux的运行状态
[root@oldboyedu-s8 ~]# setenforce
usage: setenforce [ Enforcing | Permissive | 1 | 0 ]
[root@oldboyedu-s8 ~]# setenforce 0
[root@oldboyedu-s8 ~]# getenforce
Permissive
关闭防火墙
#查询防火墙状态 systemctl status firewalld.service #关闭当前正在运行的防火墙 --- 临时 systemctl stop firewalld.service #让防火墙不会开机自启动 --- 永久 systemctl disable firewalld.service #systemctl is-active firewalld.service #is-active 是否正在运行 是否健在 #systemctl is-enabled firewalld.service #is-enabled 是否开机自启动
定时任务(crond)
检查crond状态 [root@oldboyedu-s8 ~]# rpm -qa cronie cronie-1.4.11-17.el7.x86_64 [root@oldboyedu-s8 ~]# systemctl is-active crond.service active [root@oldboyedu-s8 ~]# systemctl is-enabled crond.service enabled
#查看定时任务 [root@oldboyedu-s8 ~]# crontab -l no crontab for root
#编辑定时任务 [root@oldboyedu-s8 ~]# crontab -e #oldboyedu.com #-e edit #-l list 定时任务格式
每天的早上8:30到学校上车(go to school) 30 08 * * * go to school 每天的晚上12点整回家自己开车(go to bed) 00 00 * * * go to bed 如何修改系统时间
#查看当前时间 [root@oldboyedu-s8 ~]# date Thu Apr 26 12:13:53 CST 2018
#修改时间
[root@oldboyedu-s8 ~]# date -s "20180101 01:01:01" Mon Jan 1 01:01:01 CST 2018 让系统自动同步时间
yum install ntpdate -y [root@oldboyedu-s8 ~]# ntpdate ntp1.aliyun.com 26 Apr 12:19:53 ntpdate[18819]: step time server 182.92.12.11 offset 9976502.795919 sec [root@oldboyedu-s8 ~]# date Thu Apr 26 12:20:24 CST 2018 ntpdate ntp1.aliyun.com ntpdate ntp2.aliyun.com ntpdate ntp3.aliyun.com ntpdate ntp4.aliyun.com ntpdate ntp5.aliyun.com ntpdate ntp6.aliyun.com ntpdate ntp7.aliyun.com
###1.命令行测试
[root@oldboyedu-s8 ~]# /usr/sbin/ntpdate ntp1.aliyun.com
26 Apr 12:28:11 ntpdate[19018]: adjust time server 182.92.12.11 offset 0.000723 sec
###2.命令写入定时任务
[root@oldboyedu-s8 ~]# crontab -e
#sync(国定) time
*/2 * * * * /usr/sbin/ntpdate ntp1.aliyun.com
###3.进行检查与测试
[root@oldboyedu-s8 ~]# date -s "20190101"
Tue Jan 1 00:00:00 CST 2019
[root@oldboyedu-s8 ~]# date
Tue Jan 1 00:00:01 CST 2019
[root@oldboyedu-s8 ~]# date
Thu Apr 26 12:31:25 CST 2018