Linux常用操作指令

Linux操作系统

linux基础指令

命令解释命令解释
ps (-ef/aux)查看进程history查看历史命令
whatis一句解释!2把编号为2的历史命令再来一次
man查看解释uname/hostnam
clear清屏who/who am i/w查看登陆用户
adduser xx创建xx用户passwd xx重置用户xx的密码
groupadd
su (switch user)切换用户
reboot/init6重启sudo以管理员身份运行
shutdown/init0关机su root切换到超级管理员账户
init5启动图形界面su python切换到python普通管理员
init3启动多用户多任务带网络功能pwd(print work directory)打印当前工作目录
cd(change)切换工作目录touch hello.txt建空文件hello.txt(如果文件存在,就更新文件最后访问时间,不修改内容)
ls查看工作目录下面所有文件sudo touch hello.txt以管理员身份执行touch命令
ls -a查看所有文件(包括隐藏)(all)rm hello.txt删除hello.txt
ls -R递归地一层层展开rm -f hello.txt强制删除hello.txt (不会提示)
ls -l利用长格式查看(long)— ll 也可以cat xx查看xx里面内容
d r w xd(文件夹)r(可读)w(可写)x(可执行(execute))man xx查看手册(manuals)
ls -a -l/ls -la即是长格式,又显示隐藏文件info查看信息(information)
cd ~切换到用户主目录ls –help获得帮助
cd /切换到根目录ls –help | less一页一页看
mkdir abc新建文件夹ls –help|more一页一页看
rmdir abc删除空文件夹cp复制- copy
rm -rf abc递归地删除文件夹abc内容(谨慎使用)cp hello.txt abc/shit.txt复制到abc并改名字为shit.txt
echo回声cp hello.txt abc/复制到abc
echo hello world>hello.txt在hello.txt中输入hello worldmv shit.txt good.txt改名字为good.txt
mv剪切mv shit.txt abc/剪切到abc
head 5 hello.txt只看前五行tail 10 hello.txt只看最后10行
sort排序grep查找/搜索 (文件内查找)
find查找/搜索 (查找文件)find . -name “*.txt” -print显示当前目录下所有txt文件
find . ! -name “*.txt” -print显示当前目录下所有非txt文件cat index.html | grep body在index.html中查找body
uniq去重(unique)diff比较两个文件
diff index.html qq.html比较index.html和qq.html不同点

wcworld-count 统计wc -l统计行数
wc -w统计单词数量wc -c统计字符数
file查看文件相关信wget +网址从网址获取文件
gzip压缩gunzip解压缩
tar归档tar -xvf ok.tar解归档ok.tar
tar -cvf ok.tar abc/*把abc文件夹及下面所有文件归档tar -cvf ok.tar .txt .html归档所有txt,html后缀的文件到ok.tar
which xxx找到xxx的安装位置whereis xxx找包含xxx的所有路径
date看时间cal看日历
cal 2018看全年日历ls -l > log.txt重定向
script录制脚本 默认储存在typescript中script hehe.txt录制脚本并存在hehe.txt中
write python给用户名为python的发消息 ctrl+c退出wall ‘十分钟后关机’给所有用户发送’十分钟后关机’
mesg n表示不接受任何write消息mesg y表示接收write消息
top任务管理器kill PID杀死进程PID
kill -9 PID强杀进程PIDchown更改文件所有者
chmod修改权限1代表有此权限0代表没有此权限
111/7 rwx101/5 r-x011/3 -wx110/6 rw-
chmod u+x hello.py给当前用户绑定hello.py执行权限chmod u-x hello.py给当前用户取消hello.py执行权限
chmod u+x/g+x/o+x hello.py给user group other 绑定执行权限chomd 755 hello.py给所有用户添加执行权限
chmod +x hello.py给所有用户绑定执行权限

创建符号连接

symlink 符号链接
    ln 创建符号命令 
    ln hello.py xixi 为hello.py创建一个名为xixi的符号链接(相当于增加一个引用)(硬链接)
    ln -s hello.py xixi 为hello.py创建一个名为xixi的快捷方式(软连接)-文件最前面会加上l
    ln -s /etc/nginx/nginx.conf nginxconfig 为/etc/nginx/nginx.conf 创建一个软连接 nginxconfig

Linux安装软件

阿里云镜像安装yum
    进入/etc/yum.repos.d
    1. wget + 地址
    2. yum clean all
    3. yum makecache
    http://mirrors.aliyun.com/repo/ 镜像源地址
    http://mirrors.aliyun.com/repo/Centos-7.repo (Centos-7.repo 镜像源地址)
    http://mirrors.aliyun.com/repo/epel-7.repo (epel-7.repo 镜像源地址)

安装nginx软件
    1.包管理工具 - yum(黄狗更新器) - rpm(红帽下的包管理工具)
    2.安装程序 - *.bin 
    3.压缩文件 - 解压缩 + 配置环境变量
    4.源代码 - 构建安装(c语言构建工具)

    yum search nginx 搜索nginx
    yum install nginx.x86_64 安装nginx.x86_64
    yum remove nginx 卸载nginx
    yum list installed 查看所有已安装应用
    yum list installed | grep nginx 加管道查找nginx

    nginx -s reload 重启服务器

    rpm -iv xxx.rpm 利用rpm安装(需要提前下载文件)-i -v
    rpm -ivh --force(强行安装) -nodeps(不安装依赖包)
    rpm -e 卸载
    rpm -qa|grep 用管道列出安装程序

源代码安装redis:
        cd redis-3.2.11先去这个目录
        make && make install先要下载 源代码构建安装
        方法1:redis-server myredis.conf &——表示启动服务器加了&表示去后台运行
        方法2:redis-server myredis.conf > hello.log &——把所有输出放到文件里这样会显示进程号
        fg %1 —— 把刚才放到的后台放到前台

源代码安装python3.6.5:
        xz -d Python-3.6.5.tar.xz  (-d 表示解压)
        ./configure --prefix=/usr/local/python3.6 --enable-optimizations  构建一个c语言的makefile
        make && make install 构建完成后构建安装
        如果构建失败就说明差底层依赖库;执行下面语句
        yum -y install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel
        安装后配置环境变量--也就是创建一个软连接就可以了
        ln -s /usr/local/python3.6/bin/python3.6 /usr/bin/python3
        ln -s /usr/local/python3.6/bin/pip3.6 /usr/bin/pip3
        ln -s /usr/local/python3.6/bin/2to3-3.6 /usr/bin/2to3
        ln -s /usr/local/python3.6/bin/pyvenv-3.6 /usr/bin/venv3

解压缩+配置环境变量
    cd ~
        vim .bash_profile
            用户登陆自动运行一次
            PATH=$PATH:$HOME/bin --> PATH=$PATH:$HOME/bin:/root
            echo $PATH 回声查看$PATH值,查看更改生效没(没)
            要生效就重新链接服务器,或者执行下面代码:
            source .bash_profile 重新执行.bash_profile,让更改生效

        vim .bashrc 
            用户登陆自动运行一次
            例如:在里面末尾加入下面语句:
                alias la='ls -la' (定义别名)
                echo 'hello cfx'  (回声语句)
    cd /etc/rc.local (链接)(or)
    cd /etc/rc.d/rc.loca (实际地方)

        开机自动运行
            在末尾加入你的程序则开机启动:
            例如:再末尾加入:
            nginx
            mariadb

安装MySQL

yum install mariadb-server mariadb 安装mysql服务和客户端
systemctl start mariadb 启动服务器
mysql -u -root -p 用root登陆服务器-p表示密码
systemctl enable mariadb 开机自启mariadb
systemctl disable mariadb 关闭开机自启mariadb
systemctl stop mariadb.service 停止masql服务器
mysql -h 10.7.89.55 -u python -p 用python用户名登陆 10.7.189.55上的MySQL

关系型数据库
关系代数+集合论
用二维表组织数据
SQL - 结构化查询语言

show databases; 必须要分号
use mysql 进入MySQL
show tables 显示数据库里面所有表格
select * from user; 显示user里面所有内容
select  user, host, password from user; 显示user里面user, host, password
update user set host='%' where host='python' and user='root'; -- %表示任何ip可以连接(用于远程连接)

netstat -na | grep 3306 查看3306端口状态

启动Windows系统上的mysql:net start mysql57

防火墙

防火墙
    firewalld 
    firewall-cmd --state 查看状态
    systemctl/service/chkconfig 系统控制
    systemctl stop firewalld 停止防火墙
    systemctl start firewalld 开启防火墙
    systemcrl status firewalld 查看防火墙状态
    systemcrl restart firewalld  重启防火墙
    开启一个80端口 permanent表示永久开启
    firewall-cmd --zone=public --add-port=80/tcp --permanent
    firewall-cmd --reload

网络命令

ifconfig/ip
eth 以太网
lo 本地local host
ip address 查看地址
ping 测试检查网络 ctrl + c 结束
    发送的ipm数据,默认64bytes大小
    ping www.baidu.com
    ping -s 500 -c 3 www.baidu.com 更改数据包大小为500b进行3次测试
    ping会占用服务器带宽和资源。可以利用ping攻击服务器 (ping to death) DDoS = Distributed Deny of Service
  TCP flood (比ping包还要恶心,因为TCP传输前后需要服务器响应)
    防D(阻止ping包)
    反向代理-可以选择服务器为你传输数据-具有一个ip地址,这样你的访问就不是直接和服务器链接,是先和反响代理链接
    ttl time-to-live 存活时间 
netstat 查看网络状态(端口及服务类型等网络状态)
netstat -na (n-表示容易看懂 a-表示所有)
netstat -nap (加以个p会多一个进程编号和程序名字)
netstat -nap > result.txt 重定向
netstat -nap 2> error.txt 错误重定向 (出错的才会记录到error.txt)
netstat -nap > result.txt 2>error.txt 粘着写

路由器
  nat 网络地址转换
  端口映射
网络窃听:wireshark + 网卡混杂模式
把DNS与IP相互转换--host nslookup

文件传输

ssh 
ssh+用户名@IP 链接别人的服务器 需要知道密码 quit退出 
scp 网络拷贝

sftp 上传(put)/下载(get)文件 
sftp root@localhost

awk/计划任务/xargs/

awk (pattern scanning and processing language) 模式匹配处理语言
awk '{print $2}' 取进程号
ps -aux |grep mysql |awk '{print $2}' |xargs kill -9 2> error.log

克隆表达式 -- 计划任务 (网上搜cron表达式在线生成)
    后台crond程序会执行这个任务
    crontab -e 编辑
    crontab -l 列出
    语法:
    * * * * * (分,时,日,月,星期)
    eg:
    5 * * * * data >> /root/log.txt

vim

python 命令行参数 sys.argv[i](i为位置)
#!/usr/bin/python 设置默认程序
#--coding:utf-8-- 设置默认编码

vim hello.py
    i 编辑模式
    Esc 退出编辑模式
    : 末行模式
        set nu 显示行号
        set nonu 关闭行号
        set syntax on 高亮语法
        set ts=4 制表键设置为4个空格
        保存到.vimrc中则每次都默认开启
    dd 删除一行
    u 恢复删除
    yy 拷贝
    p  粘贴
    5dd 删5行
    w 保存
    q 退出
    q! 强退
    !v 进入最后退出文件
    G 最后一行
    gg 回到首行
    100G 去到100行
    ctrl y/e 上下滚动一行
    ctrl f/b 上下滚动一页
        h j k l 上下左右(命令模式下)
        命令模式下输入/ + xxx  查找xxx 
            g 全局模式
            i 忽略大小写
            c 确认模式
            e 不报错
        /function    n(next) 查找 n是下一个 N 是上一个
        /正则表达式    --格式:/\d\{3} --注意反斜杠的使用
        :1,$s/function/func/g 替换function为func 1,$ 表示从第一行到末尾 s 表示替换 g 表示全局模式
        :1,$s/正则表达式/替换文本/-gice
    录制宏:
        qa  ---- q + a/b/c/d (q为录制宏 abcd为四个寄存器)
        操作  (对文档进行操作)
        q     (结束录制)
        100@a (@a表示播放宏,100表示执行100次)
    自定义缩写
        :abbrev/abbr ma if __name__ == '__main__':
        在编辑模式下 输入ma+空格/制表键 会自动输出if __name__ == '__main__':
        退出后再进来将失效 否则应该保存再配置文件中
    自定义快捷键
        :map 快捷键 功能
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值