Linux 基础命令

一,GNU/LINUX操作系统组成

    
Linux 基础命令

 
1.1硬件
 计算机硬件资源,CPU,主板,内存,存储器等
1.2 内核层
包含了硬件控制,设备驱动程序,虚拟文件系统,网络管理,内存管理,进程管理,程序调度等 ,属于内核空间
1.3 系统调用
所有的操作系统在其内核里都有一些内建的函数,这些函数可以用来完成一些系统级别的功能。Linux系统使用的这样的函数叫做“系统调用”,英文是systemcall。这些函数代表了从用户空间到内核空间的一种转换。
1.4 应用程序
  运行在操作系统之上,实现用户与操作系统的交互
二,Linux shell介绍
        操作系统的外壳,作为命令语言,它交互式解释和执行用户输入的命令或者自动地解释和执行预先设定好的一连串的命令,从而实现用户和操作系统的交互;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支;
三,Linux命令格式
 command [-options] parameter1 parameter2 …
      命令       选项         参数(1)       参数(2)  …. 参数(N)
说明:
1. command 为命令的名称,例如变换路径的命令为 cd 等等;
2. 中刮号[]并不存在于实际的命令中,而加入选项配置时,通常选项前会带 – 号,
   例如 -h;有时候会使用选项的完整全名,则选项前带有 — 符号,例如 –help;
3. parameter1 parameter2.. 为依附在选项后面的参数,或者是 command 的参数; 
4. 命令, 选项, 参数等这几个咚咚中间以空格来区分,不论空几格 shell 都视为一格; 
5. 按下[Enter]按键后,该命令就立即运行。[Enter]按键代表着一行命令的开始启动。
四,Linux命令帮助
4.1 man page 
4.1.1 定义
  Linux 提供man page ,及手册。通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息; 
举例:man man 
Linux 基础命令

 
4.1.2 man page的内容介绍
NAME                       简短的命令、数据名称说明
SYNOPSIS               简短的命令下达语法(syntax)简介
DESCRIPTION         较为完整的说明,这部分最好仔细看看!
OPTIONS                 针对 SYNOPSIS 部分中,有列举的所有可用的选项说明
COMMANDS            当这个程序(软件)在运行的时候,可以在此程序(软件)中下达的命令
FILES                       这个程序或数据所使用或参考或连结到的某些文件
SEE ALSO                可以参考的,跟这个命令或数据有相关的其他说明!
EXAMPLE                一些可以参考的范例
BUGS                       是否有相关的BUG
4.1.3 man 命令后数字代表含义
1 使用者在shell环境中可以操作的命令或可运行文件
2 系统核心可呼叫的函数与工具等
3 一些常用的函数(function)与函式库(library),大部分为C的函式库(libc)
4 设备文件的说明,通常在/dev下的文件
5 装置文件的说明,通常在/dev下的文件
6 游戏(games)
7 惯例与协议等,例如Linux文件系统、网络协议、ASCII code等等的说明
8 系统管理员可用的管理命令
9  跟kernel有关的文件
4.1.4 常用参数
 -C, –config-file=文件   使用该用户设置文件
  -d, –debug                输出调试信息
  -D, –default              将所有选项都重置为默认值
      –warnings[=警告]    开启 groff 的警告
 
主要运行模式:
  -f, –whatis               等同于 whatis
  -k, –apropos              等同于 apropos
  -K, –global-apropos       search for text in all pages
  -l, –local-file
                             把“手册页”参数当成本地文件名来解读
  -w, –where, –path, –location
                             输出手册页的物理位置
  -W, –where-cat, –location-cat
                             输出 cat 文件的物理位置
 
  -c, –catman               由 catman 使用,用来对过时的 cat
                             页重新排版
  -R, –recode=编码        output source page encoded in ENCODING
4.1.5 举例
[root@my03 ~]# man -f ls
ls (1)               – list directory contents

4.2 info帮助

4.2.1 说明
      常用工具命令 info命令是Linux下info格式的帮助指令。
       就内容来说,info页面比man page编写得要更好、更容易理解,也更友好,但man page使用起来确实要更容易得多。一个man page只有一页,而info页面几乎总是将它们的内容组织成多个区段(称为节点),每个区段也可能包含子区段(称为子节点)。理解这个命令的窍门就是不仅要学习如何在单独的Info页面中浏览导航,还要学习如何在节点和子节点之间切换。可能刚开始会一时很难在info页面的节点之间移动和找到你要的东西,真是具有讽刺意味:原本以为对于新手来说,某个东西比man命令会更好些,但实际上学习和使用起来更困难。
4.2.2 语法
       info  (选项)(参数)    
-d:添加包含info格式帮助文档的目录; 
-f:指定要读取的info格式的帮助文档; 
-n:指定首先访问的info帮助文件的节点; 
-o:输出被选择的节点内容到指定文件。
4.2.3举例
info info
Linux 基础命令

4.3 help 
4.3.1 定义
   help命令用于显示shell内部命令的帮助信息。help命令只能显示shell内部的命令帮助信息。而对于外部命令的帮助信息只能使用man或者info命令查看。
4.3.2 举例
Linux 基础命令

 4.4 搜索引擎和互联网在线工具
 1)谷歌,百度等搜索引擎
 2)在线命令例如:http://linux.51yip.com/
五,常见命令
5.1 ifconfig
   ifconfig 是一个用来查看、配置、启用或禁用网络接口的工具,这个工具极为常用的。可以用这个工具来临时性的配置网卡的IP地址、掩码、广播地址、网关等。也可以把 它写入一个文件中(比如/etc/rc.d/rc.local),这样系统引导后,会读取这个文件,为网卡设置IP地址;
 
语   法:ifconfig [网络设备][down up -allmulti -arp -promisc][add<地址>][del<地址>][<hw<网络设备类型><硬件地址>][io_addr<I/O地址>][irq<IRQ地址>][media<网络媒介类型>][mem_start<内存地址>][metric<数目>][mtu<字节>][netmask<子网掩码>][tunnel<地址>][-broadcast<地址>][-pointopoint<地址>][IP地址]
 
参数: 
up 启动指定网络设备/网卡
down 关闭指定网络设备/网卡
-arp 设置指定网卡是否支持ARP协议
-promisc 设置是否支持网卡的promiscuous模式,如果选择此参数,网卡将接收网络中发给它所有的数据包
-allmulti 设置是否支持多播模式,如果选择此参数,网卡将接收网络中所有的多播数据包
-a 显示全部接口信息
-s 显示摘要信息(类似于 netstat -i)
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址
<硬件地址> 配置网卡最大的传输单元
mtu<字节数> 设置网卡的最大传输单元 (bytes)
netmask<子网掩码> 设置网卡的子网掩码
tunel 建立隧道
dstaddr 设定一个远端地址,建立点对点通信
-broadcast<地址> 为指定网卡设置广播协议
-pointtopoint<地址> 为网卡设置点对点通讯协议
multicast 为网卡设置组播标志
为网卡设置IPv4地址
txqueuelen<长度> 为网卡设置传输列队的长度
举例:
# ifconfig   #处于激活状态的网络接口 
# ifconfig -a  #所有配置的网络接口,不论其是否激活 
# ifconfig eth0  #显示eth0的网卡信息
5.2 echo
echo – 显示一行文本
 
允许在标准输出上显示STRING(s).
-n 不输出行尾的换行符.
-e 允许对下面列出的加反斜线转义的字符进行解释.
-E 禁止对在STRINGs中的那些序列进行解释.
–help 显示帮助并退出(须单独运行)
–version 输出版本信息并退出(须单独运行)
在没有 -E 的情况下,可承认并可以内置替换以下序列: 
\NNN       字符的ASCII代码为NNN(八进制) 
\\             反斜线 
\a            报警符(BEL)
\b            退格符
\c           禁止尾随的换行符 
\f            换页符 
\n           换行符 
\r            回车符 
\t           水平制表符 
\v           纵向制表符

举例:
[root@my03 ~]# echo -e “hello world\n”
hello world
[root@my03 ~]# echo -en “hello world\n”
hello world
5.3 tty
用法:tty [选项]…
显示出连接到当前标准输入的终端设备文件名。
 
  -s, –silent, –quiet 什么也不显示,只返回退出状态值
      –help            显示此帮助信息并退出
      –version         显示版本信息并退出
举例:
[root@my03 ~]# tty 
/dev/pts/1
5.4  startx
startx  启动图形界面
5.5 export
export: export [-fn] [名称[=值] …] 或 export -p
    为 shell 变量设定导出属性。 
    标记每个 NAME 名称为自动导出到后续命令执行的环境。如果提供了 VALUE
    则导出前将 VALUE 作为赋值。 
    选项:
      -f        指 shell 函数
      -n        删除每个 NAME 名称的导出属性
      -p        显示所有导出的变量和函数的列表 
    `–‘ 的参数禁用进一步的选项处理。
 
    退出状态:
    返回成功,除非使用了无效的选项或者 NAME 名称。
举例:
[root@my03 ~]# export aaa=bbb
[root@my03 ~]# echo $aaa
bbb
5.6 pwd
pwd: pwd [-LP]
    打印当前工作目录的名字。
 
    选项:
      -L        打印 $PWD 变量的值,如果它命名了当前的
        工作目录
      -P        打印当前的物理路径,不带有任何的符号链接
 
    默认情况下,`pwd’ 的行为和带 `-L’ 选项一致
 
    退出状态:
    除非使用了无效选项或者当前目录不可读,否则
    返回状态为0。
举例
[root@my03 ~]# pwd -P
/root
5.7  history
history: history [-c] [-d 偏移量] [n] 或 history -anrw [文件名] 或 history -ps 参数 [参数…]
    显示或操纵历史列表。 
    带行号显示历史列表,将每个被修改的条目加上前缀 `*’。
    参数 N 会仅列出最后的 N 个条目。
 
    选项:
      -c        删除所有条目从而清空历史列表。
      -d 偏移量 从指定位置删除历史列表。 
      -a        将当前绘画的历史行追加到历史文件中
      -n        从历史文件中读取所有未被读取的行
      -r        读取历史文件并将内容追加到历史列表中
      -w        将当前历史写入到历史文件中,并追加到历史列表中 
      -p        对每一个 ARG 参数展开历史并显示结果, 而不存储到历史列表中
      -s        以单条记录追加 ARG 到历史列表中 
    如果给定了 FILENAME 文件名,则它将被作为历史文件。否则
    如果 $HISTFILE 变量有值的话使用之,不然使用 ~/.bash_history 文件。 
    如果 $HISTTIMEFORMAT 变量被设定并且不为空,它的值会被用于
    strftime(3) 的格式字符串来打印与每一个显示的历史条目想关联的时
    间戳,否则不打印时间戳。
举例:
[root@my03 ~]# history 2
  194  help history
  195  history 2
[root@my03 ~]#
5.8 shutdown

   shutdown 以一种安全的方式关闭系统。所有登陆用户都可以看到关机信息提示,并且 login (1) 将被阻塞。可以指定立刻关机,也可以指定系统在一定的延时后关机。所有进程都将接收到 SIGTERM 信号。这可以使 vi (1) 等程序有时间将处于编辑状态的文件进行存储,邮件和新闻程序进程则可以将所有缓冲池内的数据进行适当的清除等等。 shutdown 通过通知 init 进程,要求它改换运行级别来实现。运行级别 0 用来关闭系统,运行级别 6 用来重启系统,运行级别 1 用来使系统进入执行系统管理任务状态,如果没有给出 -h 或 -r 标志时,这是 shutdown 命令的默认工作状态。具体关机或重启所执行的操作请查阅 /etc/inittab 文件中相应的运行级别栏。

shutdown [OPTIONS…] [TIME] [WALL…]
选项 OPTIONS
 -a             使用 /etc/shutdown.allow 来验证身份。
-t sec        通知 init(8) 在转换到其它运行级别前,发送警告 (warning) 信号后延时 (sec) 秒数后再发送关闭 (kill) 信号。
-k               并非真正关机,只向所有人显示警告信息。
-r                重启。
-h               停机。
-n               [DEPRECATED(不应再使用)] 不调用 init(8) 程序进行关机操作,而由自己进行。不建议用户使用这种关机方式,它的结果一般也不是你希望的那样。
-f               重启时跳过磁盘检测。
-F              重启时强制磁盘检测。
-c              取消运行中的 shutdown 进程。不可能为此选项指定 time 参数,但你可以在命令行输入一条解释消息来向所有用户说明。(一般的shutdown指令可以用按“+”号来进行中断)
time           关机时间。
warning-message    发送给所有用户的消息。

 说明:
time 参数的格式可以有很多种。首先,可以是 hh:mm 格式的绝对时间,其中 hh 指的是小时(一到二位数),mm 指的是分钟(二位数)。第二种是 +m 格式,其中 m 指的是等待的分钟数。 now 是 +0 的别名。
    如果 shutdown 在调用时使用了延时,它将自动创建一个咨询 (advisory) 文件 /etc/nologin ,作用是禁止 login(1) 允许新用户登陆,除非 shutdown 在向 init 发信号前意外中止 (就是说,它被取消或出了什么问题)。它会在调用 init 改变运行级之前删除这个文件。
-f
    标志意味着 `快速重启’。这将创建一个咨询 (advisory) 文件 /fastboot ,此文件在系统重启时会被检测到。启动脚本 rc 会检测是否存在这样的文件,如果有,就不会再运行 fsck(1),因为系统是以正常方式关闭的。这之后,启动进程会删除 /fastboot。
-F
    标志意味着 `强制 fsck’。这将创建一个咨询 (advisory) 文件 /forcefsck,此文件在系统重启时会被检测到。启动脚本 rc 会检测是否存在这个文件,如果有,就运行 fsck(1) 并且加上一个特殊的 `force’         标志,以使得即使正常卸载的文件系统也被检查。这之后,启动进程会删除 /forcefsck。
 
-n 标志导致 shutdown 不调用 init 程序进行关机,而是自己关闭所有运行中的进程。shutdown 接下来会关闭配额 (quota),记账 (accounting) 和交换分区,卸载所有文件系统。
# shutdown –h now   #关机 
# shutdown –h 23:00   #晚上11点关机 
# shutdown –r now   #重启
5.9 poweroff
   poweroff命令用来关闭计算机操作系统并且切断系统电源。
 
poweroff [OPTIONS…]   
常用参数: 
-n:关闭操作系统时不执行sync操作;
-w:不真正关闭操作系统,仅在日志文件“/var/log/wtmp”中;
-d:关闭操作系统时,不将操作写入日志文件“/var/log/wtmp”中添加相应的记录;
-f:强制关闭操作系统;
-i:关闭操作系统之前关闭所有的网络接口;
-h:关闭操作系统之前将系统中所有的硬件设置为备用模式。
5.10 reboot
reboot 重启。
 
语法:reboot [OPTIONS…] 
补充说明:执行reboot指令可让系统停止运作,并重新开机。 
选项:
  -d  重新开机时不把数据写入记录文件/var/tmp/wtmp。本参数具有”-n”参数的效果。
  -f  强制重新开机,不调用shutdown指令的功能。
  -i  在重开机之前,先关闭所有网络界面。
  -n  重开机之前不检查是否有未结束的程序。
  -w  仅做测试,并不真的将系统重新开机,只会把重开机的数据写入/var/log目录下的wtmp记录文件。
5.11 hwclock
与clock命令相同
hwclock [功能] [选项…]   
功能:
 -h, –help           显示此帮助并退出
 -r, –show           读取硬件时钟并打印结果
     –set            将 RTC 设置为 –date 指定的时间
 -s, –hctosys        从硬件时钟设置系统时间
 -w, –systohc        从当前系统时间设置硬件时钟
     –systz          基于当前时区设置系统时间
     –adjust         根据自上次时钟设置或调整后的系统漂移
                        来调整 RTC
 -c, –compare        定期将系统时钟与 CMOS 时钟相比较
     –getepoch       打印内核的硬件时钟纪元(epoch)值
     –setepoch       将内核的硬件时钟纪元(epoch)值设置为
                        –epoch 选项指定的值
     –predict        预测 –date 选项所指定时刻读取到的 RTC 值
 -V, –version        显示版本信息并退出
 
选项:
 -u, –utc                硬件时钟保持为 UTC 时间
     –localtime        硬件时钟保持为本地时间
 -f, –rtc <文件>     代替默认文件的特殊 /dev/… 文件
     –directisa         直接访问 ISA 总线,而非 /dev/rtc
     –badyear          忽略  RTC 年份(由于 BIOS 损坏)
     –date <时间>    指定要设置的硬件时钟时间
     –epoch <年>     指定作为硬件纪元(epoch)值起始的年份
     –noadjfile            不访问 /etc/adjtime;需要使用 –utc 或 –localtime 选项
     –adjfile <文件>  指定调整文件的路径; 默认为 /etc/adjtime
     –test                 不更新,只显示将进行什么操作
 -D, –debug          调试模式
5.12 date
date – 打印或设置系统日期和时间 
根据指定格式显示当前时间或设置系统时间.
 date [OPTION]… [+FORMAT]
 date [-u|–utc|–universal] [MMDDhhmm[[CC]YY][.ss]]
选项: 
-d, –date=STRING           显示由 STRING 指定的时间, 而不是当前时间
-f, –file=DATEFILE          显示 DATEFILE 中每一行指定的时间, 如同将 DATEFILE 中的每行作为 –date 的参数一样
 -I, –iso-8601[=TIMESPEC]   按照 ISO-8601 的日期/时间格式输出时间.
     TIMESPEC=`date’ (或者不指定时)仅输出日期,等于 `hours’, `minutes’, 或`seconds’ 时按照指定精度输出日期及时间. 
-r, –reference=FILE         显示 FILE 的最后修改时间
-R, –rfc-822                     根据 RFC-822 指定格式输出日期
-s, –set=STRING             根据 STRING 设置时间
-u, –utc, –universal         显示或设置全球时间(格林威治时间)
–help                                显示本帮助文件并退出
–version                          显示版本信息并退出
 
格式 FORMAT 控制着输出格式. 仅当选项指定为全球时间时本格式才有效。 分别解释如下: 
%%                                 文本的 %
%a                                  当前区域的星期几的简写 (Sun..Sat)
%A                                  当前区域的星期几的全称 (不同长度) (Sunday..Saturday)
%b                                  当前区域的月份的简写 (Jan..Dec)
%B                                 当前区域的月份的全称(变长) (January..December)
%c                                  当前区域的日期和时间 (Sat Nov 04 12:02:33 EST 1989)
%d                                  (月份中的)几号(用两位表示) (01..31)
%D                                日期(按照 月/日期/年 格式显示) (mm/dd/yy)
%e                                 (月份中的)几号(去零表示) ( 1..31)
%h                                 同 %b
%H                               小时(按 24 小时制显示,用两位表示) (00..23)
%I                                小时(按 12 小时制显示,用两位表示) (01..12)
%j                                (一年中的)第几天(用三位表示) (001..366)
%k                               小时(按 24 小时制显示,去零显示) ( 0..23)
%l                                小时(按 12 小时制显示,去零表示) ( 1..12)
%m                              月份(用两位表示) (01..12)
%M                              分钟数(用两位表示) (00..59)
%n                               换行
%p                               当前时间是上午 AM 还是下午 PM
%r                                时间,按 12 小时制显示 (hh:mm:ss [A/P]M)
%s                               从 1970年1月1日0点0分0秒到现在历经的秒数 (GNU扩充)
%S                               秒数(用两位表示)(00..60)
%t                                水平方向的 tab 制表符
%T                               时间,按 24 小时制显示(hh:mm:ss)
%U                              (一年中的)第几个星期,以星期天作为一周的开始(用两位表示) (00..53)
%V                              (一年中的)第几个星期,以星期一作为一周的开始(用两位表示) (01..52)
%w                             用数字表示星期几 (0..6); 0 代表星期天
%W                            (一年中的)第几个星期,以星期一作为一周的开始(用两位表示) (00..53)
%x                              按照 (mm/dd/yy) 格式显示当前日期
%X                             按照 (%H:%M:%S) 格式显示当前时间
%y                              年的后两位数字 (00..99)
%Y                              年(用 4 位表示) (1970…)
%z                              按照 RFC-822 中指定的数字时区显示(如, -0500) (为非标准扩充)
%Z                              时区(例如, EDT (美国东部时区)), 如果不能决定是哪个时区则为空

举例:
[root@my03 ~]# date +%m%d%H%M%S
0923064553
[root@my03 ~]# date +%F
2016-09-23
[root@my03 ~]#
 
 

  

原创文章,作者:N24_liuz,如若转载,请注明出处:http://www.178linux.com/55585

(0)
N24_liuzN24_liuz
上一篇 2016-10-29
下一篇 2016-10-29

相关推荐

  • shell脚本之变量类型、算数运算符、条件测试

    一、bash中的变量类型     本地变量:仅对当前shell有效,对其子shell无效             变量赋值:name=value      &n…

    Linux干货 2016-08-15
  • 特殊权限及facl

    Linux系统上的特殊权限          特殊权限:SUID,  SGID,  STICKY 安全上下文:         1、进程以某用户的身份运行,进程是发起此进程用户的代理,因此用户的身份和权限完成所有操作;     &…

    Linux干货 2016-11-07
  • 14程序包的编译安装

    在有些源代码程序没有被编译成rpm的时候,或者其他人写了一个源代码程序,要把它安装在服务器上要怎么做呢? 那就需要对源代码进行编译安装了。 C代码编译安装三步骤: 1、./configure: (1)通过选项传递参数,指定启用特性、安装路径等;执行时会参考用户的指定以及makefile.in文件生成makefile (2) 检查依赖到的外部环境,如依赖的软件…

    Linux干货 2016-11-27
  • 用户权限管理及课后作业

    一.权限对目录、文件的意义 文件 r 可用文件查看类工具获取文件内容 w 可以修改文件内容(包括清空) x 可执行该文件 [root@localhost testdir]# cat zzz i am fine  thank you [root@localhost testdir]…

    Linux干货 2016-08-08
  • 计算机的组成及其功能

        计算机是一种能接受和存储信息,并按照存储在其内部的程序对输入的信息进行加工、处理,然后把处理结果输出的高度自动化的电子设备。计算机是由运算器,控制器,存储器,输入装置和输出装置五大部件组成,每一部件分别按要求执行特定的基本功能。如下图所示: (1)  运算器或称算术逻辑单元(Arithmetical and Logica…

    Linux干货 2016-10-30

评论列表(1条)

  • 马哥教育
    马哥教育 2016-11-02 16:37

    总结的不错,希望你能熟知这些基础的知识,加油!