Linux:基本命令(1)

linux之父 Linus Tovalds(芬兰)

 

linux 发行版

       Redhat / Centos / Suse / Ubuntu

 

linux以 / 分割目录

       /表示根目录 /lib存放系统库文件 /bin存放二进制文件(可执行命令) /var存放经常变化的文件 /opt大型软件存放目录 /etc存放配置文件目录

       /usr存放安装程序(软件默认目录) /root /home

 

linux文件系统

       XFS 一种高性能的文件日志系统(linux一切皆文件)

 

常用命令

 

ls 列出目录内容

       -l 竖状格式化显示

       -a (all) 显示所有

 

cd 切换目录

       . 表示当前目录

       .. 表示上一级目录

       - 上一次的目录

       ~ 当前用户的家目录

       绝对路径(以/开头的都是绝对路径)/相对路径

 

mkdir

       -p 递归创建 mkdir -p a/b/c/{eee,fff}

 

rmdir 删除空文件夹

 

touch 创建文件

       touch 11.txt

       touch 22.py

 

mv 移动 改名

       mv 目标的目录 新的的目录

       mv oldname newname  #改名

 

rm 删除

       -i 需要确认删除

       -r 递归删除

       -f 强制删除 (慎用!! 要先备份!!!!!!)

 

查看文件内容

       cat 查看文件内容

              -n 显示行号 

       more 查看文本较多的文件 

       head -2 file 查看前几行 

       tail -2 file  # 查看后几行

       tail -f file  # 实时监控 

       head -20 file | tail -10 查看10-20行的内容

              管道命令 管道符左边的输出结果会作为右边的输入

              

echo 打印

       echo $PATH 打印环境变量

       echo '嘻嘻嘻' >> file 追加重定向, 在文件末尾写入

       echo '嘻嘻嘻' > file 覆盖重定向

  

vim/vm 命令模式,输入模式,底线命令模式

       0     移动到本行开头

       $     移动光标到本行结尾

       H    移动到屏幕首行

       L     移动光标到屏幕尾行

       g  移动光标到文档的首行(gg)

       G     移动光标到文档尾行

 

       u     撤销上一步操作

       :setnu 显示行数

       /xxx 查询

       :wq! 写入退出

 

       i 插入文本

       o 新期一行

       yy 赋值

       p 粘贴

       dd 删除光标所在行

       x     删除光标所在的字符

 

find 查找文件

       -type 类型 f 普通文件 d 文件夹

       -name 查找名字

       find /(目录,从哪找) -type f -name xxx

  

grep 用正则表达式搜索文本内容(字符串)

       -i 忽略大小写

       -n 显示行号

       -v 反向查询

       grep -v 'dfdsfsd'

 

cp 拷贝(备份)

       -r 递归,赋值目录及后代

       cp 目标文件 到 xx目录/也可以改名

  

scp linux之间复制文件或目录

       -r 递归赋值

       传输本地文件到远程地址

              scp 本地文件 dadi@xxxx:/文件夹/

       复制远程文件到本地

              scp dadi@xxxx:/home/* 本地文件目录

 

alias 别名

       alias rm="echo do not use rm"

       unalias rm   # 取消别名

 

which 用于查找和显示命令的绝对路径

       which pwd(显示当亲工作目录)

       /usr/bin/pwd

 

du 显示文件大小

       -s 总计

       -h 大小可读性强

       du -sh 文件名

 

top 动态监视进程活动和系统负载等信息

 

wget 在终端下载网络资源

       wget -r -p http://00000000000

            

权限

      创建普通用户

       useradd username

       password username

       删除用户

       userdel -r(删除用户和家目录) username

       ls -l

       -rw-r--r--. 1 root root 712819 Dec 7 08:17 girl.gif

       权限相关 软连接 属于哪个用户 用户组 大小 日期 文件

 

       三个一组 分别是属主权限(rw-), 属组权限(r--), others(r--)

       d 代表文件夹

       - 代表文件

 

       文件       文件夹

       r 4   可读       ls

       w 2  可写       在里面创建文件或文件夹

       x 1  可执行   cd

       - 没有权限

 

       rwx 4+2+1 对应7

       5(user)4(group)6 (other) 转化字母 r-xr--rw-

 

修改文件权限命令

       chmod

       1)

              chmod [身份]   [参数]   [文件]

                         u(user)   +(添加)  

                         g(group)  -(减去)

                         o(other)  =(赋值)

                         a(all)

              chmod u+w file

       2)推荐

              chmod 764 file     

              chown 修改属主

              chown root file

              chgrp 修改数组

              chgrp root file

              su 切换用户

              su - username

              sudo 以root身份执行命令

 

ln 软连接

       ln -s 目标文件 软连接名

       在/home建立软连接 ,指向/tmp/test.txt文件

       ln -s /tmp/test.txt mytest.txt

 

tar 解压命令

       -c 压缩

           tar -cf mytar ./*.jpg 压缩当前目录所有jpg结果的文件

       -x 解压(.tar后缀)

       -z 解压(.gz后缀)

              tar -zxvf mytar.tar.gz

       -f 指定文件

       -v 显示过程

   

netstat 打印网络状态(端口)

       netstat -tunlp

 

ps 查看系统进程

       ps -ef

       ps -ef |grep redis

       ps -ef |grep nginx

       !ps  #查看上次查看的进程

 

kill 杀死进程

       -9 进程号   # 强制终止进程

       pkill nginx

       pkill redis  #杀死与redis相关的所有进程

 

dns

       vi  /etc/hosts 主机IP 主机名 (指定本地解析)

       cat /etc/resolv.conf 查看配置文件

 

nslookup 常用的域名解析工具

 

crond 计划任务

       crontab (选项)(参数)

              -e:编辑该用户的计时器设置;

              -l:列出该用户的计时器设置;

              -r:删除该用户的计时器设置;

              -u<用户名称>:指定要设定计时器的用户名称。

 

tail -f 查看计划任务的执行

       命令必须加上绝对路径!!!!

       分 时 日 月 周 命令

       * * * * * 每一分钟 做这件事

       #每周一到周五的凌晨1点,清空/tmp目录的所有文件

       分   时   日 月 周      

       * * * * *

       0 1 * * 1-5 /usr/bin/rm -rf /tmp/*

 

yum 自动搜索下载rpm包,安装且解决依赖关系

       yum 源的仓库位置

       /etc/yum.repos.d

       然后在这个目录下,只有以repo结尾的文件,才会被识别为yum仓库

 

配置阿里云yum源

       1. 备份原来的yum源

              mv *.repo repo_bak/

       2. 下载repo文件

              wget http://mirrors.aliyun.com/repo/Centos-7.repo

       3. 生成yum缓存,并生成新的yum缓存

              yum clean all

              yum makecache

       4.下载

              yum install xxx -y(一路都是yes)

 

自动更新时间

       ntpdate -u ntp.aliyun.com

 

修改主机名

       hostnamectl set-hostname xxx

 

PS1变量

       echo $PS1

       PS1='[\u@\h \W]\$'     # 原来的配置 

       PS1='[\u@\h \w]\$'     # \w 完整的工作目录

       PS1='[\u@\h \w \t]\$'  #  \t 显示时间

 

linux安装好了之后,初始化网络服务器

       防火墙1:iptables 第三方

       防火墙2: selinux 系统自带的

 

       1.关闭linux的防火墙(就是一堆安全机制的规则, 如同保安的贴墙上的那些规则,共享单车禁止入内)

              因为后期我们去学习软件,学习nginx mysql redis ,为了学习的方便,关闭防火墙,允许所有的端口可以访问

              iptables -F 清空防火墙规则

              systemctl stop firewalld 关闭防火墙服务

              systemctl disable firewalld 关闭防火墙开机自启的服务

       2.关闭selinux ,此步骤,需要重启linux方可生效

              vi /etc/selinux/config

              找到

              SELINUX=enforcing这一行

              改成

              SELINUX=disabled

       3.如果连不到网

              1. iptables -L(有3条就对了)

              2. getenforce

              如果是Enforcing

              3. setenforce 0  或设置配置文件中为 disabled

                    

posted @ 2018-12-27 21:48  葡萄想柠檬  Views(118)  Comments(0)    收藏  举报
目录代码