linux

作者: 大漠判官1 | 来源:发表于2019-12-14 19:07 被阅读0次

    who 查看所有的当前登录用户信息 who am i 查看当前身份的所有信息
    whoami 查看当前身份 clear 清除已经查看过得信息
    last 显示最近使用过的用户信息 cal 查看今天日历
    cal 2018 今年全年日历 cal 2 2019 查看2019年2月日历
    date 查看系统时间

    useradd hellokitty 创建一个名为hellokitty的普通用户 userdel 删除用户
    passwd hellokitty 创建密码 su 切换用户
    logout/exit --退出登录 reboot/init6 -重启服务器
    shuttdown/init 0 --关机 init 0 没有提示就关机了
    shutdown 10 10分钟后关机 shutdown now 立马关机
    shutdown -c 取消关机

    文件的操作
    pwd 打印当前工作目录
    cd 切换目录(){cd / 进入最根的目录,即系统根目录}
    cd ~(进入用户根目录)
    ls -a(当前文件夹下所有的目录) 列出目录下的内容(list directory contents)
    cat /etc/centos-release 查看etc(配置文件)目录下的内容
    目录 opt(软件目录) proc(正在运行的进程) usr(一般软件的安装目录)
    cd .. (一个点表示当前目录,两个点表示上级目录)
    ls -la(常格式查看,第一位是d的就是文件夹,-是文件,)
    ls -l /etc etc目录下问件的常格式查看
    ls -lR /etc etc目录下的递归查看
    ctrl + c 终止正在运行的程序
    man -manuals-差看帮助手册
    命令 --help -

    write hellokitty 给指定用户hellokitty发消息,消息写完,ctrl+d 发送
    mesg n/y 是否接收消息
    wall - 给所有人发出广播消息

    文件夹(文件)的操作指令:
    mkdir 创建文件夹
    rmdir 删除空文件夹
    mkdir -p abc/hello 创建了一个hello子文件夹,同时也创造了一个abc父文件夹
    touch hello.txt 创建一个txt文件
    echo 回升,相当于一个打印语句
    echo 今天晚上请你吃饭 > readom.txt 将该句话写进random.txt里面
    wget http://www.sohu.com/ 联网通过URL获取指定文件
    cat -n 文件名 输出有多少行内容

    rm -f 文件名 强制删除
    rm 文件名 交互式删除
    rm -rf 文件夹名 删除文件夹
    history 查历史命令
    !历史命令编号 --重新执行历史命令

    cp 文件名1 文件名2 把1拷贝,新文件名叫2
    cp 文件名1 路径
    cp -r 文件夹1 文件夹2
    mv hello.txt def/readme.md 把hello.txt 剪切到def文件夹下,改名为readme.md
    mv index.html index2.html 在同一个文件夹下面移动,改文件名字
    less / more 文件名 ----分屏查看
    head -5 文件名 -----看文件的前5行
    tail -10 文件名 -----看文件的后10行
    wc 文件名 ---查看行数,单词数量,字符量
    wc -l/-w 文件名 行/单词数量
    sort 文件名 ---排序
    sort -r 文件名 ---倒序排序
    uniq 文件名 ---去重(只會去重響鈴的)
    sort 文件名 | uniq 连接管道,连接两个进程,把前一个进程的输出作为下一个的输入

    gzip /gunzip 压缩/解压缩
    xz -z / xz -d 压缩/解压缩

    tar是Linux系统下的归档文件(类似于windows下的rar文件)
    tar -xvf 解归档文件夹
    tar -cvf 归档文件的名字 ./* ---归档

    Linux发行版本:
    -Redhat
    -CentOS
    -Ubuntu
    -Fedora
    -SUSE
    -Debian

    Linux系统安装软件:
    1.使用包管理工具 -yum(黄狗更新器) / rpm/apt /deb
    2.源代码构建安装 -下载源代码用C语言构建工具进行构建
    3.直接下载二进制程序 - 配置环境变量之后才能使用

    Apach (httpd)
    Nginx ------http服务器------提供web应用

    yum search nginx 查询Nginx
    yum -y install nginx
    yum info nginx -查看名为nginx
    yum list installed -查看已经安装的软件包

    gcc --version

    yum -y install nginx 安装Nginx
    systemctl start nginx 启动Nginx
    systemctl restart nginx 重启Nginx
    systemctl stop nginx 停止Nginx
    systemctl status nginx 查看Nginx状态
    systemctl enable nginx -设置Nginx开机自启
    systemctl disable nginx -禁用Nginx开机自启

    Internet是基于TCP/IP模型的四层架构
    应用层--http/ftp/ssh/qq/smtp/pop3
    传输层-- tcp / udp 端到端传输服务
    网络层 ---ip --寻址和路由
    物理链路层(网络接口层) --分贞和校验

    端口是用来区分不同的服务,服务端口是对IP地址的扩展

    redis.io 数据库代码下载

    PyPy-python解释器是用python语言实现的

    sftp root@1.2.3.4
    SFTP常用命令:
    quit/exit/bye -退出sftp
    cd /lcd -切换远端工作目录/切换本地工作目录
    pwd /lpwd -查看远端工作目录/查看本地工作目录
    ls /lls -查看远端工作目录的内容/查看本地工作目录下的内容
    mkdir /lmkdir -在远端创建目录/在本地创建目录
    put -上传文件(-r 递归效果可以用来上传文件夹)
    get -下载文件(-r 递归效果可以用来下载文件夹)

    硬连接-相当于给问价增加了了一个有用计数(不复制数据的备份)
    软连接(符号连接) --相当于是windows下的快捷方式
    可以为常用的文件和文件夹在用户主目录下创建软连接方便操作

    alias rm='rm -f' (别名,重新定义,减少代码量)
    unalias rm='rm -i' (反别名)

    ls(已经被别名过了 ls --color=auto)
    ll --(ls -l)
    重新别名同一个命令是,会被覆盖

    make && make install (只有第一个成功才会执行第二个)
    make;make install (第一个不成功也能执行第二个)
    data || cal || echo hello (第一个失败执行第二个 ,第一个成功就不会执行第二个)
    who | wc -l (查看有多少人登录服务器)

    输出重定向
    cal > a文件 (日历将覆盖a文件的内容)
    cal >>a文件 (追加)

    ls -R / > ok.txt 2> erroe.txt (输出重定向和错误输出重定项)

    ctrl + w 命令输错时,进行回撤

    wget http://www.sohu.com -O sohu.html (-O大写的,重命名)

    vim的工作模式:
    1.命令模式 按a或i进入编辑模式 按/?进入进入末行模式
    ZZ 退出
    2.编辑模式 按Esc进入命令模式
    3.末行模式 按回车回到命令模式:

    常用命令:
    h j k l移动光标
    dd d0 d$ dw -删行 删到首行 删到末尾行 删单词
    yy - 赋值
    p -粘贴
    u -撤销
    3yy 复制3行
    yy / p 复制/粘贴
    q!强行退出

    快捷键
    ctrl + y(向上翻一行)
    ctrl + e (向下翻一行)
    ctrl + b(向上翻一页)
    ctrl + f(向下翻一页)
    ctrl + r 重做
    ctrl + w 按两下 --切换窗口

    vim 安装一个名为YouCompleteMe插件

    末行模式:
    set nu /set nonu -设置显示/取消行号
    set =4 -设置制表的空格数
    syntax on /off -打开/关闭高亮语法
    ls 显示打开的问件
    sp 水平拆分
    vs 垂直拆分

    -rw-r--r-- 1 root root 97 Nov 14 11:42 hello.py
    第一个字符
    d -文件夹
    l -软连接

    • -文件

    第2~4个字符:文件的所有者对文件有何种操作权限
    r -读
    w -写
    x -execute -执行

    第5~7个字符:和文件所有者同组的用户对文件有何种操作权限
    第8~10个字符:其他用户(不是所有者也不同组)的用户对文件有何种操作权限

    chmod U+x hello.py (加上执行权限)(相当于chmod 100 hello.py)
    chmod g+x,o+x hello.py 【chmod 111 hello.py】
    chmod U+rw
    chmod u-x,g-x,o-x hello.py (去掉所有的执行权限)

    chown hellokitty hello.py
    2to3 -w hello.py (进去之后把解释器改成python3)
    ./hello.py 执行程序
    /usr/bin/ 软连接放在下面,二进制

    vim .vimrc 配置文件,每次会自动生效

    map 映射 快捷键

    vim -d 文件1 文件2 (比较版本)
    vs 垂直分割
    sp 水平分割
    :q 退出一个
    :q a 全部退出

    查找文件 find
    查找替换
    1,10s/self/shit/ci 第1行到第10行的self(这里可以是正则表达式)替换成shit /c 提示是否替换 i 忽略大小写 e忽略错误

    符号常量优于字面常量, 枚举类型是定义符号常量的最佳类型
    录制宏

    1、单一职责原则 --一个类只做该做的事情不做不该做的事情
    2、依赖倒转原则
    3、开闭原则
    4、里氏替换原则
    5、接口隔离原则
    6、合成聚合服用原则 --优先考虑强关联关系而不是继承关系来复用代码
    7、最少知识原则(迪米特法则)
    Gof设计模式:23种经典场景----大多数在python中被弱化了

    if True -- 命令模式 q a

    ln 源文件 目标文件
    ln -s 源 目标 (软连接)
    进程命令:
    ps -查看进程状态(processes)
    ps -ef |grep nginx
    ps -ef |grep nginx |grep -v grep
    kill -9 编号(强杀进程)

    kill 19

    kill 编号 (普通杀)
    ps -auf

    top 查看进程

    系统登录成功之后进入shell(壳程序)交互式环境
    大多数linux系统默认的shell都是bash

    网络相关命令:
    以太网(Ethernet)
    ping - 检测可达性 (ttl存活时间)
    tracepath 检查数据路由
    ifconfig -检查网络接口(网络适配器)
    ip -查看配置网络接口相关信息
    netstat -查看网络状态(端口占用,进程,已建立的连接)
    netstat -nap | grep 3306 (-nap具体查看整个网络状态,
    3306(加上该参数可以直接查看3306端口状态))
    sftp -安全网络文件传输
    scp - 安全文件拷贝
    scp fish.py root@47.107.173.5:/root/lll.pyfish.py 拷贝去另一台服务器root下面

    redis-server & (加上&,可以让程序去后台运行 ,输出还是在前台)
    redis-server >redis.log & (把输出写在redis.log文件里)
    jobs (查看正在后台运行的程序)
    fg %1 (把后台编号为1的程序拿到前台运行)
    ctrl + z (把正在在前台运行的状态转去后台,暂停下来)
    bg %1 (把后台编号为1的已经停止的的程序启动)

    chgrp 改变用户组

    版本控制
    1990s --锁定模式
    CVS -Concurrent Version System
    VSS -Visual Source Safe

    2000s --合并模式
    -SVN -Subversion -集中控制式

    分布式版本控制系统 -BitKeeper
    2005s - Git / Mercury

    相关文章

      网友评论

          本文标题:linux

          本文链接:https://www.haomeiwen.com/subject/bpkhnctx.html