Linux 究级基础入门命令整理

Linux 究级基础入门命令整理

条条框框,三三两两,怎讷个这么多,哈哈!no zuo no die.

纯粹个人菜鸟笔记,望大神笑纳!

后续,未完!!

查看系统信息

  • uname -a - 查看内核/操作系统/CPU信息
  • head -n 1 /etc/issue - 查看操作系统版本
  • free -m - 查看内存使用量和交换区使用量
  • df -h - 查看各分区使用情况
  • du -sh <目录名> - 查看指定目录的大小
  • du -sh * 查看当前目录下各个目录及文件所占用磁盘空间大小
  • grep MemTotal /proc/meminfo - 查看内存总量
  • grep MemFree /proc/meminfo - 查看空闲内存量
  • iptables -L - 查看防火墙设置
  • ps -ef - 查看所有进程
  • lsof -i:端口号
  • netstat -tunlp|grep 端口号

文件传输

  • rsync文件增量传输
    rsync -avzu --progress  ~/Desktop/hh/images/  root@112.213.122.123:/www/wwwroot/hh/images/
  • find xargs
    #find 查找需要解压的zip文件
    #xargs 依次执行unzip
    find . -name '*.zip' | xrags -n1 unzip

linux下 ls 排序

  • 按文件名升序(这是ls的默认输出方式)
    ls -l | sort -k9
  • 按大小降序排列
    ls -lS
  • 按大小升序
    ls -l | sort -n -k5
  • 按时间降序
    ls -ltn
  • 按时间升序
    ls -ltr
  • 按文件名降序
    ls -lr
  • 按文件名降序
    ls -l | sort -rk9
  • 只显示目录
    ls -l -d */
  • 只显示文件
    ls -l |grep -v "^d"

vim编辑

  • Vim 中如何去掉 ^M 字符 ==> vim下 :%s/^M//g 或者 :1,$s/^M//g 均可 [^M是使用 "CTRL-V CTRL-M" 而不是字面上的 ^M]
  • grep -rl '^M' ./havetatami | xargs sed -i 's/^M//g'
  • 查看配置文件有效配置
    egrep -v '^$|^#' /etc/vsftpd/vsftpd.conf | less

磁盘挂载

  • 系统盘的扩容安全无影响
  • 数据磁盘的挂载需要选择全新的无文件的空目录,或者先把目录下的文件移至其它位置
  • 一个目录下面只能挂载一个数据磁盘,数据磁盘支持像系统盘一样的扩容操作
  • 必要时执行umount 挂载目录ls -la 挂载目录可能有一些帮助
  • 温馨提示重要文件请备份,科学绿色环保无公害

mysql操作

  • 导出数据库 mysqldump -uroot -p --add_drop_database database_name > database.sql
  • --no-create-db,-n 将不创建数据库,不与 --databases 或者 --all-databases 搭配使用

    +【-B, --databases】导出指定数据库数据,包括数据库和表的创建脚本
  • 相反使用 -n, --no-create-db
    mysqldump -uroot -p -B test dbname2
    mysqldump -uroot -p -n test
  • --lock-all-tables,-x 在开始导出之前,提交请求锁定所有数据库中的所有表,以保证数据的一致性。这是一个全局读锁,并且自动关闭
  • 导出指定表的数据
    mysqldump -t database -u username -ppassword --tables table_name1 table_name2 > database.sql
  • 导出存储过程和自定义函数 --routines,-R
    mysqldump -uroot -R -n test -p > database.sql
  • 只导出存储过程和函数(不导出结构和数据)
    mysqldump -uroot -R -ndt dbname1 -p > xxx.sql
  • sql.gz数据备份与恢复
    mysqldump -hhostname -uusername -ppassword --no-create-db -x databasename | gzip > sqlback.sql.gz
    
    gunzip < sqlback.sql.gz | mysql -uusername -ppassword databasename
  • 杂项

    连接服务器保持不掉线(ubantu)
    ssh -o serveraliveinterval=60 root@ip

    连接服务器保持不掉线(centos编辑/etc/ssh/sshd_config文件设置心跳,保持连接)

    ClientAliveInterval 600
    ClientAliveCountMax 10 #配置生效
    systemctl restart sshd
  • 查看系统所有环境变量
    env | grep -i proxy
    unset proxy
  • 常用
    mysqldump -uroot -p -n test > /file/test.sql;
  • 导入mysqldump文件 mysql>source /home/xxxx/database .sql; 或 mysql -uroot -p < database.sql
  • 创建数据库 CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8mb4 COLLATE utf8mb4_general_ci

记一次由于软件更新未成功导致ubantu桌面进不去[进入高级recovery模式]

sudo apt-get update
sudo apt-get upgrade sudo apt-get remove lightdm
sudo install lightdm systemctl enable lightdm.service
systemctl start lightdm.service

参考链接

上一篇:PS不能存储,因为程序错误


下一篇:学习Linux下的IP地址地理位置信息显示工具nali