2019-02-26 Linux指令

来连接云服务器:

1.连接服务器:    ssh  root@ip地址

2.退出:  logout


Linux指令系统:

命令名称 [命名参数] [命令对象]

一、日常操作

1.cd指令      - 进入指定文件夹

cd  目录   - 进入指定目录(也可以是文件夹对应的路径)
               ~相对路径 — 绝对路径

cd  ..       - 返回上层目录

cd  ~   - 回到根目录

cd  /    - 进入系统根目录

2.ls指令

ls          - 查看当前目录中的内容

ls  -l/-lh              -  查看详情

ls -a               - 隐藏文件也一起显示

ls -R           - 递归显示所有内容

ls -S/-t            - 按大小/时间排序

3.pwd指令         

pwd  - 显示当前完整目录

4.文件操作指令

touch  文件名      - 新建文件

cat 文件名         - 查看文件内容

vim/vi  文件名          -打开文件

rm  文件名     - 删除文件

rm - r 目录       - 删除文件夹

cp  文件名1  文件名2  - 将文件1中的内容拷贝到文件2中

cp  文件1路径   文件2路径

cp -r  文件名/目录名   目录2    - 将文件/目录拷贝到目录2中

mv  文件名1  文件名2  - 将文件1中的内容移动到文件2中 ,并且删除文件1(文件重命名)

mv  文件1路径   文件2路径


mv  文件名1  文件目录  - 将文件1移动到指定目录中  
注意: mv指令不能加-r操作目录

(注意:cp/mv/rm 后面可以跟: -i询问  -f强制  -n不覆盖)

mkdir  目录名      - 新建文件夹

mkdir -p a/b/c      - 按层级创建a,b,c三个文件夹

mkdir -p a/{b,c}/{d,e,f}    -同一层级常见多个

rmdir  目录名      - 删除指定空目录


7.history       - 显示历史指令记录

bashrc 配置显示时间:export  HISTTIMEFORMAT="[%y‐%m‐%d_%T] " 

修改bashrc 后使其生效:  source ~/.bashrc  或 .  .bashrc   



6.链接

ln -s 源路径  目标路径     - 给源路径对应的文件在目标路径下创建一个软链接(可以看成是快捷键)(源路径是绝对路径) (掌握!)

ln 源路径  目标路径            - 给源路径对应的文件在目标路径下创建一个硬链接(了解)

注意: 源文件不存在的时候,软件无效,硬链接变成普通文件


8.快捷键

ctr + f         - 前进一个字符

ctr + b     - 后退一个字符

ctr + a     - 回到行首

ctr + e         - 回到行尾

ctr + w     - 向左删除一个单词

ctr + u     - 向左删除全部

ctr + k     - 向右删除全部

ctr + y     - 粘贴上次删除的内容

ctr + l     - 清屏  

二、进程相关指令(用得较少)

1.ps指令

ps                      - 进程状态

ps -aux  或者  ps ex          - 查看进程

ps -aux|grep 进程名        - 查看指定进程

ps grep  进程ID

2.top指令

top                         - 动态监控进程

top  -p PID1,PID2,….        - 动态监控指定进程

3.free指令

free -单位                    - 以指定单位查看内存, 例如 
free -m (以Mb为单位显示内存状况), -g,  -k等!

4.kill指令

kill 进程号                    - 杀死指定的进程

kill -1/-9/-15              - -1(HUP)不间断重启,-9
(KILL)强制杀死进程,-15(TERM)正常终止进程  

pkill  进程名              - 按名字处理进程

killall 进程名             - 处理名字匹配的进程

uptime                  - 查看系统状态


三、权限管理

1.user和group : 一个系统可以有多个用户和多个分组; 一个分组中可以有多个用户,一个用户在不同的分组中(多对多)

users                                   - 查看当前用户

groups                              - 查看当前分组

groupadd  分组名                           - 添加分组

useradd ‐G 分组列表 ‐m ‐s /bin/bash 用户名     - 创建一个用户添加到指定的分组中(在home创建相应的文件夹)

usermod -G 分组列表 用户名                 - 修改分组

passwd 用户名                          - 修改密码

su  用户名                             - 切换用户身份

sudo                                        - 以管理员执行其他程序

注意: a.在ubuntu需要将用户添加到sudo分组中,才能使用sudo以管理员的身份执行程序

b.在centOS中需要先执行vi 指令进入sudoers文件中在指定的位置添加内容


Allow root to run any commands anywhere

root    ALL=(ALL)       ALL

xiaoming ALL=(ALL)      ALL     (自己添加的,xiaoming是用户名)

2.chmod 

chmod     权限值   文件          - 修改指定文件的权限

chmod    [a,u,g,o][+,-][r,w,x]  文件          - 为指定文件,给所有用户添加相应的权限(a:所有,u:自己,g:同组,o:其他;
+:添加, -: 取消;r:读,w:写,x:执行)

chown  用户名   文件         - 改变文件所有者

(权限制是三组二进制值)

self      group    other

rwx      rwx        rwx

111       101       001            - 自己读写可执行,同一分组的只读可执行,其他的只可执行

110      100        000

chmod  644  文件

chmod  777   文件

chmod 666    文件


三、日志管理

1.cat指令

cat       文件                - 查看文件内容

2.查看部分

head -n  N  文件      - 查看前N行内容

tail  -n  N    文件       - 查看后N行内容

3.

less [-N]  文件
    
- 按 j 向下
    
- 按 k 向上
    
- 按 f 向下翻屏
    
- 按 b 向上翻屏
    
- 按 g 到全文开头
    
- 按 G 到全文结尾
    
- 按 Q 退出  

more [-N]  文件           - 和less差不多,这个是尽可能多,less是尽可能少的加载

4.处理

sort                - 排序  (cat 文件 |sort)

uniq                - 去重  (cat 文件 |uniq) - 只会去重相邻的重复是数据,一般结合sort一起使用:  |sort|uniq

awk ‘{print $N}’    - 打印第N列的内容(netstat -natp|awk ‘{print $4}’)



history |awk '{print $4}' |sort |uniq ‐c | sort ‐rnk 1 | head ‐n 3          -获取历史指令中,使用最频繁的三个指令


5.重定向

执行获取数据的指令  > 文件  (将执行指定的结果存储到文件中 - 覆盖原文件中内容)

执行获取数据的指令 >> 文件   (将执行指定的结果存储到文件中 - 在原文件的最后追加)

5.统计  

wc -c(字符)/-w(单词)/-l(行)  文件




6.查找

grep  查看对象  目录/文件  参数
    
    参数:
        -i  忽略大小写:         grep you bb.txt   -i
        -n   显示行标号:      grep you bb.txt -n   /   grep you bb.txt -i -n
        -E   通过正则表达式匹配:     grep -E  ‘正则表达式’  文件
        注意: Linux中,正则不支持: \d, \s,\w,\b,\D,\S,\W,\B
                                           支持:.   +, *, ?, {N,M}, [], ^, $


        -v   忽略字段:   grep you bb.txt -v  (在bb.txt中找不包含you的所有行)
                        grep -E '[0-9]+\.[0-9]+' abb.txt -v

        -rn  递归查找目录,并打印行号
        grep -r  you ./   (在当前文件夹下中所有文件中去找包行’you’的行)
                        

        —include=‘*.py’ 仅包含 py文件: grep -r you ./ --include='*.txt'

        —exclude=‘*.js’ 不包含 js 文件: grep -r you ./ --exclude='*.c'

    例如:
        grep you bb.txt  
        grep you bb.txt -i
        grep you bb.txt -i -n
        grep -E '[0-9]+' bb.txt 

find       DIR  -name  ‘*.xxx’      找到目录下所有名字匹配的文件:  find a1 -name '*.txt’(在文件夹a1中找所有txt文件)


    例:find ./ -size +20k -size -100k -name '*.txt'   (找当前目录下大于20k并且小于100k的所有txt文件)


which  指令       - 精确查找当前可执行的指令

whereis  指令 - 查找所有匹配的命令




四、网络管理


ifconfig     查看网卡状态

netstat   -natp                 - 查看网络连接状态

netstat   -natp|grep  端口号           - 查看指定端口的网络连接状态 

ping  地址 

ping  -i   时间   地址

ping  -c  次数    地址

telnet  ip地址    端口       - 查看远程主机网络连接状况

dig 地址          - 查看DNS

** wget  地址         - 下载  



五、使用包管理工具

包管理工具:yum 

* yum search:搜索软件包,例如yum search nginx。

* yum list installed:列出已经安装的软件包,例如yum list installed | grep zlib。

* yum install:安装软件包,例如yum install nginx。

* yum remove:删除软件包,例如yum remove nginx。

* yum update:更新软件包,例如yum update可以更新所有软件包,而yum update tar只会更新tar。

* yum check-update:检查有哪些可以更新的软件包。

* yum info:显示软件包的相关信息,例如yum info nginx。

源代码构建安装

1. wget  安装包的路径        -下载安装包

2. gunzip/tar  压缩包         - 解压、解归档

3. (设置安装路径)

4. cd 安装包目录 执行: make && make install       -编译安装包程序

5. 给可执行文件添加软连接到usr/bin目录下            -添加快捷方式


压缩/解压缩和归档/解归档 - gzip / gunzip / xz / tar

你可能感兴趣的:(2019-02-26 Linux指令)