Linux常用命令

原创
2015/03/13 22:49
阅读数 203

###inux常用命令

#####1. ssh&scp 远程服务器操作

  • ssh 登录远程服务器
    用法:ssh user(远端用户名)@host(远端IP)
    示例:ssh root@192.168.1.9
  • ssh 远程服务器执行指定命令
    用法:ssh user@host "命令; 命令"(前提条件,ssh无密码登录,配置方法在备注)
    示例:ssh root@192.168.1.9 "cd /home; ls"
    其他方法:eofexpect
  • scp 上传服务器上的文件
    用法:scp /path/file(这部分为本地的路径) user(远端目标用户名)@host(远端目标IP):/pathorfile(文件存储路径)
    示例:scp ~/* root@192.168.1.9:/home/
  • scp 下载服务器上的文件
    用法:scp user(远端用户名)@host(远端IP):/path/file(下载文件在远端的路径) localpathorfile(本地文件存放路径)
    示例:scp root@192.168.1.9:/home/root/conf/* ~/

#####2. cd 目录操作

  • cd -
    功能:返回进入此目录之前所在的目录
  • cd !$
    功能:把上个命令的参数作为cd参数使用,!$是取上一个命令的最后一个字符串作为参数

#####3. tail 显示文件内容

  • tail -f file(文件名)
    功能:把文件里最尾部的内容显示在屏幕上,并且不但刷新,使你看到最新的文件内容

#####4. grep 内容匹配

  • grep "被查找的字符串" 文件名
    功能:从文件内容查找匹配指定字符串的行
    示例:grep "thermcontact" */*.in(在当前目录里第一级文件夹中寻找包含指定字符串的.in文件 )
  • grep –i "被查找的字符串" 文件名
    功能:查找时不区分大小写
  • grep –e "正则表达式" 文件名
    功能:从文件内容查找与正则表达式匹配的行
  • grep -v "被查找的字符串" 文件名
    功能:查找不保证指定字符串的行
  • grep -2 "被查找的字符串" 文件名 or grep -C 2 "被查找的字符串" 文件名 功能:从文件内容查找匹配指定字符串的行 ,并输出前后2行
  • grep -A 2 "被查找的字符串" 文件名
    功能:从文件内容查找匹配指定字符串的行 ,并输出后2行
  • grep -B 2 "被查找的字符串" 文件名
    功能:从文件内容查找匹配指定字符串的行 ,并输出前2行
  • grep -F -f a.txt b.txt | sort | uniq
    功能:求a.txt b.txt 的交集
  • grep -F -v -f a.txt b.txt | sort | uniq
    功能:求差集b.txt - a.txt

#####5. wc 信息统计

  • wc -l 文件名
    功能:输出文件行数统计
  • wc -w 文件名
    功能:输出单词数统计

#####6. 通过程序名杀进程

  • ps -ef | grep processname(程序名) | grep -v grep | awk {'print $2'} | xargs kill -9

#####7. sort 排序

#####8. uniq 去重

#####9. nohup 以守护进程启动

#####10. 压缩和解压缩

  • gz压缩
    gzip filename filename.gz 不保留源文件
    gzip –c filename > filename.gz 保留源文件
  • gz解压缩
    gunzip filename.gz 不保留源文件
    gzip -d filename.gz 不保留源文件
    gunzip –c filename.gz > filename 保留源文件
  • tar打包
    tar -cvf filename.tar filename 将filename打包成filename.tar
  • tar解包
    tar -xvf filename.tar
  • tar.gz压缩
    tar -zcvf filename.tar.gz filename 将filename压缩成filename.tar.gz
  • tar.gz解压缩
    tar -zxvf filename.tar.gz
  • zip压缩
    zip filename.zip filename 将filename压缩成filename.zip
  • zip解压缩
    unzip filename.zip
  • rar压缩
    rar a filename.rar filename 将filename压缩成filename.zip
  • rar解压缩
    rar x filename.rar

#####11. ln 链接

  • ln -s sourceFile lnName 给sourceFile增加一个软连接lnName

#####12. find 查找

  • find path -name "filename" 在path路径中查询filename,可以使用*来匹配

#####13. du 统计文件大小

  • du -sh 当前目录大小
  • du -h --max-depth=1 当前目录的子目录的大小

#####14. 查询swap使用量前十的进程

  • for i in $(cd /proc;ls | grep "^[0-9]" | awk '$0>100'); do sudo awk '/Swap:/{a=a+$2}END{print '"$i"',a/1024"M" }' /proc/$i/smaps;done| sort -k2nr | head

#####15. 查看外网ip

  • curl ifconfig.me
  • curl ip.cn

#####16. 多台机器执行相同命令

  • atnode 'shell命令' '机器名'
  • 例子: atnodes 'grep xxx /home/www/web/logs/catalina.out' 'host[1-6].cn'

#####17. 释放swap

  • free -m (查看机器剩余的物理内存,是否够用)
  • swapoff -a && swapon -a (关闭 再 打开 swpa)
  • watch -n 1 free -m (开另一个终端窗口,观察swap释放过程)
  • 观察直到swap释放完,并重新开启swap为止(swap total不为零,swap used为零)

#####18. iftop查看网络流量

###备注
#####ssh无密码登陆

  1. ssh-keygen -t rsa 连续三个回车。 看到our public key has been saved in ****
  2. ssh-copy-id user(远端用户名)@host(远端IP)
  3. 如果错误就用 ssh-copy-id -i ~/.ssh/id_rsa.pub user@host
  4. ssh user(远端用户名)@host(远端IP)

#####ssh机器别名登陆
vim ~/.ssh/config

Host          别名
HostName  机器名
User          登录用户
展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部