http://www.cnblogs.com/suliuer/p/5448747.html

本文主要包括两部分,一是Linux基础命令的总结;二是总结一些常用的命令知识点。

一、基础总结

学习Linux的时候用思维导图做了归纳总结了基础部分的一些常用命令,用思维导图一以归档记忆,一以不断总结完善。

主要包括文件处理、权限管理、文件搜索、帮助命令、用户管理、压缩解压、网络配置、关机重启。

二、常用命令

系统信息

uname -m 显示机器的处理器架构
uname -r 显示正在使用的内核版本
cat /proc/cpuinfo 显示CPU info的信息
cat /proc/meminfo 校验内存使用
cat /proc/swaps 显示哪些swap被使用
cat /proc/version 显示内核的版本
cat /proc/net/dev 显示网络适配器及统计
cat /proc/mounts 显示已加载的文件系统
lspci -tv 罗列 PCI 设备
lsusb -tv 显示 USB 设备
date 显示系统日期
cal 2016 显示2016年的日历表
clock -w 将时间修改保存到 BIOS
 
 

获取IP地址

ifconfig eth0 | grep "inet addr" | awk '{print $2}' | cut -c 6-
ifconfig | grep "inet addr:" | grep -v "127" | cut -d: -f2 | awk '{print $1}'
 

检查当前登录的用户个数

who | wc -l
 

关机 (系统的关机、重启以及登出 )

shutdown -h now 关闭系统(1)
init 0 关闭系统(2)
telinit 0 关闭系统(3)
shutdown -h hours:minutes & 按预定时间关闭系统  
shutdown -c 取消按预定时间关闭系统
shutdown -r now 重启(1)
reboot 重启(2)
logout 注销 
 

检查DNS Server工作是否正常,以61.139.2.69为例

dig www.baidu.com @61.139.2.69
 

查看内存的大小

free -m |grep “Mem” | awk ‘{print $2}’
 

查看文件大小和查看磁盘使用情况

du:基于文件,统计文件大小相加——是面向文件的命令,它计算分配给指定文件或者目录的空间。
df :基于磁盘,统计数据块使用情况——通过文件系统中未分配的空间来确定文件系统中已分配空间的大小。
常用命令:
df -hi 
du -a 
 
 

查看80端口的连接,并排序

netstat -an -t | grep “:80″ | grep ESTABLISHED | awk ‘{printf “%s %s\n”,$5,$6}’ | sort
 

日志查看、搜索

cat /var/log/rflogview/*errors
grep -i error /var/log/messages
grep -i fail /var/log/messages
tail -f -n 2000 /var/log/messages
 

读写字符

read
-n 读取n个字符
-s 不回显
-p 显示提示信息
-t 特定时间
-d 定界符
 

使用cut命令选定字段

 cut -d : -f 1,5 /etc/passwd  
#-d后面的冒号表示字段之间的分隔符。
#-f表示取分割后取哪些字段。
 

提取开头或结尾数行

head -n 5 /etc/passwd
#显示输入文件的前五行。
 tail -n 5 /etc/passwd             
#显示输入文件的最后五行。
 

重定向输出

0:表示键盘输入(stdin)
1:表示标准输出(stdout),系统默认是1
2:表示错误输出(stderr)
* 2>&1 就是将 stderr 并进 stdout 作输出
* 1>&2 或 >&2 就是将 stdout 并进 stderr 作输出
command >/dev/null 2>&1 &  == command 1>/dev/null 2>&1 &
1)command:表示shell命令或者为一个可执行程序
2)>:表示重定向到哪里
3)/dev/null:表示Linux的空设备文件
4)2:表示标准错误输出
5)&1:&表示等同于的意思,2>&1,表示2的输出重定向等于于1
6)&:表示后台执行,即这条指令执行在后台运行
总而言之,这条命令的意思是:在后台执行这个程序,并将错误输出2重定向到标准输出1,然后将标准输出1全部放到/dev/null文件,也就是清空。
 
 

参数传递

$0脚本名字
$1 - $9 位置参数 #1 - #9
$#位置参数的个数
"$@"所有的位置参数
"$*"所有的位置参数
$?返回前一个命令的返回值,在执行命令后可以用此参数检查执行结果。
$$脚本的进程ID(PID)
 
 

参数判断

if  [ expr ];   then … fi
-n str :字符串 str 是否不为空 
-z str :字符串是否为空 
str1  = str2 :str1是否与 str2 相同 
str1 != str2 : str1是否与 str2 不同 
int1 -eq int2 :等于 
int1 -le  int2 :小于等于 
int1 -ge int2 :大于等于 
int1 -lt   int2 :小于 
int1 -gt  int2 :大于 
int1 -ne int2 :不等于
-b :是否块文件 
-p :文件是否为一个命名管道 
-c :是否字符文件 
-r :文件是否可读 
-d :是否一个目录 *
-s :文件的长度是否不为零
-e:文件是否存在 *
-S:是否为套接字文件
-f:是否普通文件 *
-x:文件是否可执行,则为真
-g:是否设置了文件的 SGID 位
-u:是否设置了文件的 SUID 位
-G:文件是否存在且归该组所有 
-w:文件是否可写,则为真
-k:文件是否设置了的粘贴位
-t fd:fd 是否是一个与终端相连的打开的文件描述符(fd 默认为 1)
-O:文件是否存在且归该用户所有
 
 
E_NOARGS=65
if [ -z "$1" ] # -z 如果为0则为真 ,如果没有存在$1参数,则打印用法和错误参数
then
    echo "Usage: `basename $0 [domain-name]`"
    exit $E_NOARGS
fi

Linux命令学习整理。的更多相关文章

  1. 《Linux命令学习手册》系列分享专栏

    <Linux命令学习手册>系列分享专栏 <Linux命令学习手册>已整理成PDF文档,点击可直接下载至本地查阅https://www.webfalse.com/read/207 ...

  2. Linux命令学习笔记目录

    Linux命令学习笔记目录 最近正在使用,linux,顺便将用到的命令整理了一下. 一. 文件目录操作命令: 0.linux命令学习笔记(0):man 命令 1.linux命令学习笔记(1):ls命令 ...

  3. 别出心裁的Linux命令学习法

    别出心裁的Linux命令学习法 操作系统操作系统为你完成所有"硬件相关.应用无关"的工作,以给你方便.效率.安全.操作系统的功能我总结为两点:管家婆和服务生: 管家婆:通过进程.虚 ...

  4. Linux命令学习

    Linux命令学习 Ubuntu常用快捷键 •Ctrl+Alt+T: 打开终端 •Ctrl+Shift+T: 新建标签页 •Tab: 终端中命令补全 •Alt+数字N: 终端中切换到第N个标签页 •↑ ...

  5. Linux命令学习总结之rmdir命令的相关资料可以参考下

    这篇文章主要介绍了Linux命令学习总结之rmdir命令的相关资料,需要的朋友可以参考下(http://www.nanke0834.com) 命令简介: rmdir命令用用来删除空目录,如果目录非空, ...

  6. linux命令学习之:chmod

    chmod命令用来变更文件或目录的权限.在Linux系统家族里,文件或目录权限的控制分别以读取R.写入W.执行X3种一般权限来区分,另有3种特殊权限可供运用.用户可以使用chmod指令去变更文件与目录 ...

  7. Linux命令学习笔记1

    1.Linux命令学习 2.Mkdir /data       -创建文件夹 在/下创建文件夹 data 3.Cd               -目录切换 列如cd / 4.Touch /data/1 ...

  8. 20155229付钰涵-虚拟机安装及LINUX命令学习

    安装Ubuntu遇到的问题 问题一: 新建虚拟电脑的版本只有32-bit,与老师所给教程中的64-bit不符.为此我上百度搜寻了答案. 第一种方法: 控制面板--程序与功能--启动或关闭windows ...

  9. 安装虚拟机&Linux命令学习

    安装虚拟机&Linux命令学习 基于VirtualBox虚拟机安装Ubuntu 1.下载安装VirtualBox 根据自己电脑(32位操作系统)的实际情况,我在网上找了相应的VirtualBo ...

随机推荐

  1. android基础知识之一

    1:Android系统架构(重点) 分层的架构 JNI java native interface 1.application :应用层 : java 2.application framework ...

  2. JS的Touch事件们,触屏时的js事件

    丫的,终于找到了JS在平板电脑上的事件!!!   iphone.ipod Touch.ipad触屏时的js事件   1.Touch事件简介   pc上的web页面鼠标会产生onmousedown.on ...

  3. 4_STL设计理念_算法

    STL算法,容器,迭代器的设计理念1.STL容器通过 类模板 技术,实现 数据类型 和 容器模型的分离:2.迭代器技术 实现了 遍历和操作容器的统一方法3.STL算法设计理念:通过预定义的函数对象和函 ...

  4. PHP如何通过SQL语句将数据写入MySQL数据库呢?

    1,php和MySQL建立连接关系 2,打开 3,接受页面数据,PHP录入到指定的表中 1.2两步可直接使用一个数据库链接文件即可:conn.php <?phpmysql_connect(&qu ...

  5. ul+li标签制作表格

    table标签制作表格代码繁琐,且不方便后期代码维护. li标签加上css的浮动样式可以制作多种样式的表格. 代码如下: <ul id="ttttt" style=" ...

  6. Memcached 笔记与总结(9)Memcached 与 Session

    一.Memcached 存储 Session 由于 Memcached 是分布式的内存对象缓存系统,因此可以用来实现 Session 同步:把 Web 服务器中的内存组合起来,成为一个“内存池”,不管 ...

  7. iTunes.exe 在win7系统中运行出错解决办法

    重新安装了iTunes打开后就报错,然后直接退出 查windows日志提示错误应用程序名称: iTunes.exe 错误模块名称: KERNELBASE.dll 重新安装iTunes问题依旧,后来在G ...

  8. Redis主从在线互相切换

    由于某些原因,我们可能需要将redis master更换机器,我们可以停机进行更换,但是那样可能影响到用户体验.本文简要操作进行不停机迁移. 系统环境 CentOS 6.3 x64redis-serv ...

  9. Avada主题通过自定义CSS全局更换微软雅黑字体

    Avada主题的菜单.正文.标题.面包屑路径等等如果想更换为“微软雅黑”中文字体,只需要进入Avada主题的选项,倒数第二项有个Custom CSS,把下面的代码粘贴进去即可.当然你也可以自行改变字体 ...

  10. Vcenter server 5.5安装部署

    1.安装VMware ESXi Server 虚拟主机安装方法请看本人博客 "实践记忆": http://www.cnblogs.com/zoulongbin/p/5896836. ...