1.远程连接linux

ssh -p 56 root@192.168.178.34  # 指定端口号 用户名和IP

默认端口
56ssh
3306:mysql
80:http
443:https
6379:redis

 

2. 查看网卡信息

ifconfig

 

3.目录相关

pwd:查看当前目录
ls:查看当前文件夹下的文件和文件夹
    ls -a:展示全部文件,包括隐藏文件
    ll:以列表的形式查看文件和隐藏文件

tree:以树的形式查看目录曾今,需要安装tree

cd:目录切换

mkdir:创建目录
    mkdir test_{1..3}  # 一次创建多个连号
    mkdir test_{4,5}  # 一次性创建多个相同前缀目录
    mkdir -p /test/project: 递归创建文件夹

mv 目录A 目录B :移动目录或者重名目录,对文件也适应
rm -rf 目录:递归删除文件夹下的所有文件或文件夹
cp -r 目录A 目录B :将目录A 拷贝到目录B

 

特殊目录:

.  当前目录
.. 上一级目录
-  上一次的工作目录
~  当前登录用户的家目录
/  根目录

 

linux下的目录结构

 

4 文件相关

linux默认文件操作

touch 文件:              创建文件
cat 文件:                 查看文件内容
rm -f 文件:              删除文件
echo "hello world" >> test.txt :向指定文件中写入内容
cp 文件A 文件B:            拷贝文件
head 文件:               默认从文件的前10行看
    head -3  /etc/passwd   查看文件的前3行
tail 文件:               默认从文件的后10行看
    tail -2  /etc/passwd   查看文件的后2行
    tail -f /tmp/test.txt  能够检测文件内容的变化 

 

5 linux下的帮助信息

1.man手册
    - man ls
    - man cd
2.命令参数加上 --help
    - mkdir --help

 

6 PATH 环境变量

PATH中定义一些常用的软件定命令目录,可以快捷的执行对应的命令
1. 为什么系统可以直接找到python解释器?
    which python
2. 产看当前PATH存放的命令目录
    echo $PATH
3. 添加目录到PATH中
    vim /etc/profile # 打开文件,在文件末尾添加环境变量,并将需要添加的目录在之前的基础上修改
    PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin"  以:分割

7.vim编辑器的使用

命令模式下
    $:快速移动到行尾
    0:快速移动到行首
    x:删除光标所在的字符
    gg:移动到文件的第一行
    G:移动到文件的最后一行

    /string :全文搜索指定的字符串 n:查找下一个
    yy:复制光标当前行
    3yy:复制光标后三行
    p:粘贴
    dd:删除光标所在行
    3dd:删除光标所在的后3行
    dG:删除光标所在及文件末尾的所有行
    ggdG:删除全文
    u:撤销上一次操作

底线模式下:
    :wq:保存并退出
    :q!:强制退出并不保存
    :set number:显示行好
    :数字:快速定位到某一行

 

8.alias别名

可以给很长的一条命令起一个别名
alias: 查看当前已有的别名
alias  别名=“xxxxxxxxxxx”

 

9.find命令

用于搜索机器上某个文件
语法:
    find 起始目录 [-type][f/d] [-name] 文件名
如:
    find ./ -type f -name 'hello.txt'  在当前目录查找名字为hello.txt的文件
    find /etc -type f -name "ifcfg*"

 

10 linux下的管道符

| :管道符,结合其他命令使用,起到连接
如:
  1.例如过滤服务器上的进程信息
  2.例如过滤服务器上的端口状态信息

 

11.grep命令

从文本中过滤有用的信息
如:
    1. grep "hello" . -rn      在当前目录下搜索指定内容,并将合格的信息显示所在的文件和行号
    2. ps -ef | grep 'hello'   查看进程为hello的信息

grep -rl 'Enslaved' ./ | xargs sed -i 's/Enslaved/Insubordinate/g'  # 在当前目录下查找Enslaved的所有文件,然后作为参数传递给xargs,将Enslaved替换为Insubordinate
grep -rl --exclude-dir="linux" "master" . | xargs grep -l "slave"  # 在当前目录下查找master的文件,排除linux的文件夹,找到所有的文件作为参数,传递给xargs,再查找包含slave的文件

sed -i 's/master/host/g'  ./tools/libdua/release/dua/cda00bas.h  # 将指定文件中的所有master替换为host

 

12. ps命令

查看linux进程信息的命令
ps -ef                  查看所有的进程
ps -ef | grep "hello"   查看hello的进程

 

13 netstat命令

查看linux网络端口
netstat -tunlp                 显示机器所有的tcp、udp的所有端口连接情况
netstat -tunlp | grep 80       查看80端口信息
netstat -tunlp | grep   ssh    查看ssh服务是否正常

 

14 top命令

类似windows下的任务管理器,可以动态的现实进程,CPU,内存, 网络等情况

命令:top

第一行 (uptime)
系统时间 主机运行时间 用户连接数(who) 系统1,5,15分钟的平均负载

第二行:进程信息
进程总数 正在运行的进程数 睡眠的进程数 停止的进程数 僵尸进程数

第三行:cpu信息
1.5 us:用户空间所占CPU百分比
0.9 sy:内核空间占用CPU百分比
0.0 ni:用户进程空间内改变过优先级的进程占用CPU百分比
97.5 id:空闲CPU百分比
0.2 wa:等待输入输出的CPU时间百分比
0.0 hi:硬件CPU中断占用百分比
0.0 si:软中断占用百分比
0.0 st:虚拟机占用百分比

第四行:内存信息(与第五行的信息类似与free命令)
total:物理内存总量
used:已使用的内存总量
free:空闲的内存总量(free+used=total)
buffers:用作内核缓存的内存量

第五行:swap信息
total:交换分区总量
used:已使用的交换分区总量
free:空闲交换区总量
cached Mem:缓冲的交换区总量,内存中的内容被换出到交换区,然后又被换入到内存,但是使用过的交换区没有被覆盖,交换区的这些内容已存在于内存中的交换区的大小,相应的内存再次被换出时可不必再对交换区写入。

 

15 kill命令

杀死进程的命令
kill -9  pid
pkill -9 进程名

 

16 du命令

用法
du 【参数】【文件或目录】
-s 显示总计
-h 以k,M,G为单位显示,可读性强

 

 

 

17 chmod命令

文件管理的权限-----也就是针对这文件,属于哪个用户,属于哪个组,以及对应的权限是什么
对于linux系统而言,文件、文件夹,都是有  user 属主,  group属组的一个角色分配,还存在一个other其他人,并且设定了  r  w   x  三个权利的限制,也就是 读,写,执行(对于文件的读写执行)

 

 

 

 

 

 

1. chmod 000  file.txt  #给与文件最低的权限,任何人不得读写执行
2. chmod 777  file.txt  # 给文件的最高权限,任何人可以读写执行
3. chmod 444  file.txt    # 所有人有只读的权限

18 linux下的打包,压缩和解压

打包,不节省空间
压缩,节省磁盘空间

语法
tar 命令
功能参数

-z   调用gzip命令,对文件压缩 ,加上这个参数,才会节省磁盘空间
-x   解包,拆快递
-v    显示整个过程
-f    必须写在参数结尾,
-c    打包,收拾快递
tar  -zcvf  allopt.tar      ./*        # 打包且压缩当前目录下的所有文件,命名为 allopt.tar
tar  -zxvf  allopt.tar.gz   ./         # 解包在当前目录

 

19 软硬连接

ln -n file1 file2  将文件2设置为文件1的软连接:file1和file2 任何一个改动都会反馈到另一方,删除源文件, 软连接文件不可用
ln -s file1 file2  将文件2设置为文件1的硬连接:file1和file2 任何一个改动都会反馈到另一方

 

20 crontab定时任务

 

 

crond定时任务服务,提供了一个客户端管理命令crontab,我们常用于定期去除日志

crontab  -e  #编辑定时任务配置文件
crontab -l  #查看定时任务的规则

定时任务的语法规则
*  *  *  *  *   命令的绝对路径
分 时  日 月 周  

#每月的1,10,22日的4:45重启nginx
45  4  1,10,22   *  *     /usr/bin/systemctl  restart nginx  

 

 

21.显示IPCS信息

  1. ipcs                                       显示共享内存,消息队列, 信号量全部的IPC
  2. ipcs -q                                   显示消息队列
  3. ipcs -s                                   显示信号量
  4. ipcs -m                                  显示共享内存
  5. ipcds -u                                 显示IPC状态汇总

22.scp

scp [user@host1:]file1 [user@host2:]file2         将主机1下的某一路径下的文件拷贝到另一个主机下的某一路径
scp -r [user@host1:]dir1 [user@host2:]dir2       将主机1下的某一路径下的文件夹拷贝到另一个主机下的某一路径
scp ATA19x.ATA19x.11-1-kunmzhao-002dev.img kunmzhao@10.74.4.245:/home/kunmzhao/myStation   用例

 

posted on 2022-11-11 11:29  阿明明  阅读(41)  评论(0编辑  收藏  举报