Linux系统命令从入门到完全忘记(二)

2,120次阅读
没有评论

Linux系统命令从入门到完全忘记(二)

文件打包压缩命令

gzip

概要: 打包或解压文件

语法格式: tar [参数] [文件名] tar [参数] [文件名] [源文件]

参数:

参数 概述
-c 创建新的归档文件
-v 显示操作过程
-f 对普通文件操作
-x 从归档文件中释放文件
-z 调用gzip来压缩归档文件
-p 保持属性
-C 指定解压目录
–exclude 解压时排除指定文件

使用示例:

  • 请用 tar 打包/etc 整个目录(打包及解压)

打包:

<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
<span class="line">[root@ansheng ~]<span class="comment"># tar zcf  etc.tar /etc</span></span>
<span class="line">tar: Removing leading `/<span class="string">' from member names</span>
<span class="line">[root@ansheng ~]# ls</span>
<span class="line">etc.tar  testfile</span></span>

解压:

<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">[root@ansheng ~]<span class="comment"># tar zxf etc.tar </span></span>
<span class="line">[root@ansheng ~]<span class="comment"># ls</span></span>
<span class="line">etc  etc.tar</span>
  • 请用tar打包/etc整个目录(打包及压缩,但需要排除/etc/services 文件)
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
<span class="line">[root@ansheng ~]<span class="comment"># tar zcf etc.tar.gz /etc --exclude=/etc/services</span></span>
<span class="line">tar: Removing leading `/<span class="string">' from member names</span>
<span class="line">[root@ansheng ~]# tar zxf etc.tar.gz </span>
<span class="line">[root@ansheng ~]# ls etc</span>
<span class="line">etc/        etc.tar.gz  </span>
<span class="line">[root@ansheng ~]# ls etc/service</span>
<span class="line">ls: cannot access etc/service: No such file or directory</span></span>
  • 请把etc.tar.gz压缩包,解压到/tmp 指定目录下
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">[root@ansheng ~]<span class="comment"># tar zxf etc.tar.gz -C /tmp/</span></span>
<span class="line">[root@ansheng ~]<span class="comment"># ls /tmp/</span></span>
<span class="line">etc</span>

tar

概要: 用来压缩和解压文件。tar本身不具有压缩功能。他是调用压缩功能实现的

语法格式: tar[必要参数][选择参数][文件]

参数:

参数 说明
-A 新增压缩文件到已存在的压缩
-c 建立新的压缩文件
-d 记录文件的差别
-x 从压缩的文件中提取文件
-t 显示压缩文件的内容
-z 支持gzip解压文件
-j 支持bzip2解压文件
-Z 支持compress解压文件
-v 显示操作过程
-l 文件系统边界设置
-k 保留原有文件不覆盖
-m 保留文件不被覆盖
-C 切换到指定目录
-f 指定压缩文件

使用示例:

  • 将当前目录下面的ansheng.txt打包成tar文件
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
<span class="line">[root@ansheng ~]<span class="comment"># tar zcvf ansheng.tar ansheng.txt </span></span>
<span class="line">ansheng.txt</span>
<span class="line">[root@ansheng ~]<span class="comment"># ls</span></span>
<span class="line">ansheng.tar  ansheng.txt</span>
  • 将刚刚打包的文件解压到/tmp下,并显示执行过程
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
<span class="line">[root@ansheng ~]<span class="comment"># tar zxvf ansheng.tar -C /tmp/</span></span>
<span class="line">ansheng.txt</span>
<span class="line">[root@ansheng ~]<span class="comment"># ls /tmp/</span></span>
<span class="line">ansheng.txt</span>

zip

概要: zip是个使用广泛的压缩程序,文件经它压缩后会另外产生具 有”.zip”扩展名 的压缩文件。

语法格式: zip [-AcdDfFghjJKlLmoqrSTuvVwXyz$][-b <工 作目录>][-ll][-n <字 尾字符串>][-t <日 期时间>][-<压 缩效率>][压 缩文件][文件…][-i <范本样式>][-x <范本样式>]

参数:

参数 说明
-c 替每个被压缩的文件加上注释
-d 从压缩文件内删除指定的文件
-j 只保存文件名称及其内容,而不存放任何目录名称
-o 以压缩文件内拥有最新更改时间的文件为准,将压缩文件的更改时间设成和该文件相同
-q 不显示指令执行过程
-r 递归处理,将指定目录下的所有文件和子目录一并处理
-S 包含系统和隐藏文件
-t 把压缩文件的日期设成指定的日期
-T 检查备份文件内的每个文件是否正确无误
-v 显示指令执行过程或显示版本信息
-X 不保存额外的文件属性

使用示例:

  • 压缩文件abc.txt
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
<span class="line">[root@ansheng ~]<span class="comment"># zip abc.zip abc.txt </span></span>
<span class="line">  adding: abc.txt (stored 0%)</span>
<span class="line">[root@ansheng ~]<span class="comment"># ls</span></span>
<span class="line">abc.txt  abc.zip</span>

unzip

概要: unzip为.zip压缩文件的解压缩程序。

语法格式: unzip [-cflptuvz][-agCjLMnoqsVX][-P <密 码>][.zip文 件][文件][-d <目录>][-x <文件>] 或 unzip [-Z]

参数:

参数 说明
-l 显示压缩文件内所包含的文件
-p 与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任 何的转换
-L 将压缩文件中的全部文件名改为小写
-n 解压缩时不要覆盖原有的文件
-o 不必先询问用户,unzip执 行后覆盖原有文件
-P <密码>使 用zip的密码选项
-X 解压缩时同时回存文件原来的UID/GID

使用示例:

  • 将压缩文件text.zip在当前目录下解压缩
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
<span class="line">[root@ansheng ~]<span class="comment"># ll</span></span>
<span class="line">total 4</span>
<span class="line">-rw-r--r-- 1 root root 153 Apr 24 21:32 abc.zip</span>
<span class="line">[root@ansheng ~]<span class="comment"># unzip abc.zip </span></span>
<span class="line">Archive:  abc.zip</span>
<span class="line">  inflating: abc.txt                 </span>
<span class="line">[root@ansheng ~]<span class="comment"># ls</span></span>
<span class="line">abc.txt  abc.zip</span>

信息显示命令

uname

概要: uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。

语法格式: uname [OPTION]…

参数:

参数 说明
-a 详细输出所有信息
-m 显示主机的硬件(CPU)名
-n 显示主机在网络节点上的名称或主机名称
-r 显示linux操作系统内核版本号

使用示例:

  • 查看系统详细信息
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># uname -a</span></span>
<span class="line">Linux ansheng 2.6.32-573.22.1.el6.x86_64 <span class="comment">#1 SMP Wed Mar 23 03:35:39 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux</span></span>

hostname

概要: 查看或修改主机名

语法格式: Hostname Hostname [hostname]

使用示例:

  • 显示当前所登录的主机名
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># hostname </span></span>
<span class="line">ansheng</span>
  • 修改当前主机名为”baidu”
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># hostname baidu</span></span>
<span class="line">[root@ansheng ~]<span class="comment"># logout</span></span>

修改之后要重新登录一下终端才会显示修改之后的主机名

<span class="line">1</span>
<span class="line">2</span>
<span class="line">Last login: Fri Apr 22 10:17:00 2016 from 172.16.10.1</span>
<span class="line">[root@baidu ~]<span class="comment">#</span></span>

小结:Hostname修改的主机名只是在当前环境下生效,重启之后就失效了,所以修改主机名要先修改/etc/sysconfig/network配置文件,修改之后也不会立刻显示修改后的主机名,还需要再用hostname再修改了,然后重新登录终端这样就永久性的修改了主机名

dmesg

概要: 查看开机信息/打印或控制内核环形缓冲区,kernel会将开机信息存储在ring buffer中。您若是开机时来不及查看信息,可利用dmesg来查看。开机信息亦保存在/var/log目录中,名称为dmesg的文件里。

语法格式: dmesg [-c] [-r] [-n level] [-s bufsize]

参数:

参数 说明
-c 清除开机信息,但/var/log/dmesg文件中仍然有这些信息
-s<缓冲区大小> 预设置为8196,刚好等于ring buffer的大小
-n 设置记录信息的层级

使用示例:

  • 打印并清除内核环形缓冲区
<span class="line">1</span>
<span class="line">[root@ansheng ~]<span class="comment"># dmesg -c</span></span>

uptime

概要: 获取主机运行时间和查询linux系统负载等信息

语法格式: uptime uptime [-V]

使用示例:

  • 查看系统负载信息
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># uptime </span></span>
<span class="line"> 21:49:35 up 25 min,  2 users,  load average: 0.00, 0.01, 0.04</span>

信息显示依次为:现在时间、系统已经运行了多长时间、目前有多少登陆用户、系统在过去的1分钟、5分钟和15分钟内的平均负载。

stat

概要: 查看文件信息

语法格式: stat [OPTION]… FILE…

使用示例:

  • 查看文件ansheng.txt的详细信息
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
<span class="line">[root@ansheng ~]<span class="comment"># stat abc.txt </span></span>
<span class="line">  File: `abc.txt<span class="string">'</span>
<span class="line">  Size: 3               Blocks: 8          IO Block: 4096   regular file</span>
<span class="line">Device: 803h/2051d      Inode: 134419      Links: 1</span>
<span class="line">Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)</span>
<span class="line">Access: 2016-04-24 21:37:21.675475354 +0800</span>
<span class="line">Modify: 2016-04-24 21:32:06.000000000 +0800</span>
<span class="line">Change: 2016-04-24 21:32:32.225744545 +0800</span></span>

说明:

参数 说明
access time 表示我们最后一次访问(仅仅是访问,没有改动)文件的时间
modify time 表示我们最后一次修改文件的时间
change time 表示我们最后一次对文件属性改变的时间,包括权限,大小,属性等等

top

概要: 动态显示系统进程运行信息

使用示例:

  • 查看系统进程运行信息
<span class="line">1</span>
<span class="line">[root@ansheng ~]<span class="comment"># top</span></span>

seq

概要: seq命令用于产生从某个数到另外一个数之间的所有整数。

语法格式: seq [选项]… 尾数 seq [选项]… 首数 尾数 seq [选项]… 首数 增量 尾数

参数:

选项 参数
-f 使用printf 样式的浮点格式
-s 使用指定字符串分隔数字(默认使用:\n)
-w 在列前添加0 使得宽度相同

使用示例:

  • 打印输出str009–str011,以空格为分割
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># seq -s" " -f"str%03g" 9 11</span></span>
<span class="line">str009 str010 str011</span>

echo

概要: echo命令用于在shell中打印shell变量的值,或者直接输出指定的字符串

语法格式: echo [选项] [参数]

参数:

参数 说明
-e 激活转义字符

-e选项

选项 说明
\a 发出警告声
\b 删除前一个字符
\c 最后不加上换行符号
\f 换行但光标仍旧停留在原来的位置
\n 换行且光标移至行首
\r 光标移至行首,但不换行
\t 插入tab
\v 与\f相同
\ 插入\字符
\nnn 插入nnn(八进制)所代表的ASCII字符

使用示例:

  • 用echo命令打印带有色彩的文字:
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># echo -e "\e[1;31mThis is red text\e[0m"</span></span>
<span class="line">This is red text</span>

watch

概要: 定时监控一个命令的运行结果

语法格式: watch [选项] [参数]

参数:

参数 说明
-n 指定指令执行的间隔时间(秒)
-d 高亮显示指令输出信息不同之处
-t 不显示标题

使用示例:

  • 监测磁盘inode和block数目变化情况
<span class="line">1</span>
<span class="line">[root@ansheng ~]<span class="comment"># watch -n 1 "df -i;df"</span></span>

which

概要: 查看命令所在路径

语法格式: whitch/whereis [Command]…

使用示例:

  • 查看cp命令所在路径
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
<span class="line">[root@ansheng ~]<span class="comment"># which cp</span></span>
<span class="line"><span class="built_in">alias</span> cp=<span class="string">'cp -i'</span></span>
<span class="line">        /bin/cp</span>
<span class="line">[root@ansheng ~]<span class="comment"># whereis cp</span></span>
<span class="line">cp: /bin/cp /usr/share/man/man1p/cp.1p.gz /usr/share/man/man1/cp.1.gz</span>

Whereis

概要: 同which一样查看命令所在路径,同时也会查找命令帮助文件

语法格式: whitch/whereis [Command]…

参数:

参数 说明
-b 只查看命令所在路径

使用示例:

  • 查看useradd命令所在路径
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># whereis useradd</span></span>
<span class="line">useradd: /usr/sbin/useradd /usr/share/man/man8/useradd.8.gz</span>
  • 只显示命令所在路径
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># whereis -b userdel</span></span>
<span class="line">userdel: /usr/sbin/userdel</span>

用户管理命令

w

概要: 显示目前登入系统的用户信息。

语法格式: w [-fhlsuV] [用户名称]

参数:

参数 说明
-f 开启或关闭显示用户从何处登入系统
-h 不显示各栏位的标题信息列
-s 使用简洁格式列表,不显示用户登入时间,终端机阶段作业和程序所耗费的CPU时间
-u 忽略执行程序的名称,以及该程序耗费CPU时间的信息

使用示例:

  • 查看系统当前登录的用户
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
<span class="line">[root@ansheng ~]<span class="comment"># w</span></span>
<span class="line"> 21:57:15 up 32 min,  2 users,  load average: 0.04, 0.04, 0.05</span>
<span class="line">USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT</span>
<span class="line">root     pts/0    172.16.10.1      21:24    0.00s  0.29s  0.00s w</span>
<span class="line">root     pts/1    172.16.10.1      21:28   10:19   0.01s  0.01s -bash</span>

useradd

概要: 创建用户

语法格式: useradd [options] LOGIN

参数:

参数 说明
-c 加上备注文字,备注文字保存在passwd的备注栏中
-d 指定用户登入时的启始目录
-e 指定账号的有效期限,缺省表示永久有效
-f 指定在密码过期后多少天即关闭该账号
-g 指定用户所属的起始群组
-G 指定用户所属的附加群组
-M 不要自动建立用户的登入目录
-n 取消建立以用户名称为名的群组
-r 建立系统账号
-s 指定用户登入后所使用的shell
-u 指定用户ID号

使用示例:

  • 创建用户ansheng指定家目录在/home/test,指定UID为999,禁止用户登陆
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
<span class="line">[root@ansheng ~]<span class="comment"># id ansheng</span></span>
<span class="line">id: ansheng: No such user</span>
<span class="line">[root@ansheng ~]<span class="comment"># useradd ansheng -d /home/test -u 999 -s /sbin/nologin </span></span>
<span class="line">[root@ansheng ~]<span class="comment"># id ansheng</span></span>
<span class="line">uid=999(ansheng) gid=999(ansheng) groups=999(ansheng)</span>
<span class="line">[root@ansheng ~]<span class="comment"># su - ansheng</span></span>
<span class="line">This account is currently not available.</span>
  • 创建用户Linux,不创建用户家目录,属于ansheng组
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
<span class="line">[root@ansheng ~]<span class="comment"># id linux</span></span>
<span class="line">id: linux: No such user</span>
<span class="line">[root@ansheng ~]<span class="comment"># useradd linux -M -g ansheng</span></span>
<span class="line">[root@ansheng ~]<span class="comment"># id linux</span></span>
<span class="line">uid=1000(linux) gid=999(ansheng) groups=999(ansheng)</span>

userdel

概要: 删除用户

语法格式: userdel [options] LOGIN

参数:

参数 说明
-r 删除帐号时连同帐号主目录一起删除

使用示例:

  • 删除用户oldgirl并且删除家目录
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
<span class="line">[root@ansheng ~]<span class="comment"># id linux</span></span>
<span class="line">uid=1000(linux) gid=1000(linux) groups=1000(linux)</span>
<span class="line">[root@ansheng ~]<span class="comment"># ls /home/</span></span>
<span class="line">linux  <span class="built_in">test</span></span>
<span class="line">[root@ansheng ~]<span class="comment"># userdel -r linux</span></span>
<span class="line">[root@ansheng ~]<span class="comment"># ls /home/       </span></span>
<span class="line"><span class="built_in">test</span></span>

usermod

概要: 修改用户属性

语法格式: usermod [options] LOGIN

参数:

参数 说明
-c 修改用户帐号的备注文字
-d 修改用户登入时的目录
-e 修改帐号的有效期限
-f 修改在密码过期后多少天即关闭该帐号
-g 修改用户所属的群组
-G 修改用户所属的附加群组
-l 修改用户帐号名称
-L 锁定用户密码,使密码无效
-s 修改用户登入后所使用的shell
-u 修改用户ID
-U 解除密码锁定

使用示例:

  • 修改用户zhang的UID为555,名称为redhat,登陆家目录为/home/redhat
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
<span class="line">[root@ansheng /]<span class="comment"># usermod -d /home/redhat/ zhang</span></span>
<span class="line">[root@ansheng /]<span class="comment"># id redhat</span></span>
<span class="line">id: redhat: No such user</span>
<span class="line">[root@ansheng /]<span class="comment"># usermod -u 555 -l redhat zhang</span></span>
<span class="line">[root@ansheng /]<span class="comment"># id zhang</span></span>
<span class="line">id: zhang: No such user</span>
<span class="line">[root@ansheng /]<span class="comment"># id redhat</span></span>
<span class="line">uid=555(redhat) gid=901(zhang) groups=901(zhang)</span>

passwd

概要: 设置或修改用户密码

语法格式:

参数:

参数 说明
-k 保留即将过期的用户在期满后能仍能使用
-d 删除用户密码,仅能以root权限操作
-l 锁住用户无权更改其密码,仅能通过root权限操作
-u 解除锁定
-x 两次密码修正的最大天数,后面接数字;仅能root权限操作
-n 两次密码修改的最小天数,后面接数字,仅能root权限操作
-w 在距多少天提醒用户修改密码;仅能root权限操作
-i 在密码过期后多少天,用户被禁掉,仅能以root操作
-S 查询用户的密码状态,仅能root用户操作
–stdin 非交互式设置用户密码

使用示例:

  • 非交互是方式设置用户密码
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">[root@ansheng ~]<span class="comment"># echo ansheng.me | passwd  --stdin root</span></span>
<span class="line">Changing password <span class="keyword">for</span> user root.</span>
<span class="line">passwd: all authentication tokens updated successfully.</span>

groupadd

概要: 创建用户组

语法格式: groupadd [options] group

参数:

参数 概述
-g 指定GID

使用示例:

  • 创建用户组Group,GID为888
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">[root@ansheng /]<span class="comment"># groupadd -g 888 group</span></span>
<span class="line">[root@ansheng /]<span class="comment"># tail -1 /etc/group</span></span>
<span class="line">group:x:888:</span>

groupdel

概要: 删除用户组

语法格式: groupdel group

使用示例:

  • 删除用户组xiugaitest
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
<span class="line">[root@ansheng /]<span class="comment"># tail -1 /etc/group                  </span></span>
<span class="line">xiugaitest:x:8888:</span>
<span class="line">[root@ansheng /]<span class="comment"># groupdel xiugaitest</span></span>
<span class="line">[root@ansheng /]<span class="comment"># grep "xiugaitest" /etc/group</span></span>

groupmod

概要: 修改用户组

语法格式: groupmod [options] GROUP

参数:

参数 概述
-g 指定id
-n 修改用户组名

使用示例:

  • 修改用户组group的GID为999,组名为xiugaitest
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
<span class="line">[root@ansheng /]<span class="comment"># tail -1 /etc/group                     </span></span>
<span class="line">group:x:888:</span>
<span class="line">[root@ansheng /]<span class="comment"># groupmod -g 8888 -n xiugaitest group   </span></span>
<span class="line">[root@ansheng /]<span class="comment"># tail -1 /etc/group                  </span></span>
<span class="line">xiugaitest:x:8888:</span>

su

概要: 用户切换

语法格式: su [OPTION]… [-] [USER [ARG]…]

参数:

参数 说明
-f 不必读启动文件(如 csh.cshrc 等),仅用于csh或tcsh两种Shell
-l 加了这个参数之后,就好像是重新登陆一样,大部分环境变量(例如HOME、SHELL和USER等)都是以该使用者(USER)为主,并且工作目录也会改变。如果没有指定USER,缺省情况是root
-m/-p 执行su时不改变环境变数
-c command 变更账号为USER的使用者,并执行指令(command)后再变回原来使用者

使用示例:

  • 利用su使用ansheng用户执行pwd命令
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># su - ansheng -c "pwd"</span></span>
<span class="line">/home/ansheng</span>

sudo

概要: sudo是superuser do的简写,sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令

语法格式: sudo(选项)(参数)

参数:

参数 说明
-l 列出当前用户可以执行的命令。只有在sudoers里的用户才能使用该选项
-k 清除”入场卷”上的时间,下次再使用sudo时要再输入密码
-K 与-k类似,但是它还要撕毁”入场卷”,也就是删除时间戳文件
-b command 在后台执行指定的命令
sudo -e file 不是执行命令,而是修改文件,相当于命令sudoedit

使用示例:

  • 查看当前用户拥有的sudo权限
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
9
10
<span class="line">[root@ansheng ~]<span class="comment"># sudo -l</span></span>
<span class="line">Matching Defaults entries <span class="keyword">for</span> root on this host:</span>
<span class="line">    requiretty, !visiblepw, always_<span class="built_in">set</span>_home, env_reset, env_keep=<span class="string">"COLORS DISPLAY HOSTNAME HISTSIZE</span>
<span class="line">    INPUTRC KDEDIR LS_COLORS"</span>, env_keep+=<span class="string">"MAIL PS1 PS2 QTDIR USERNAME LANG LC_ADDRESS LC_CTYPE"</span>,</span>
<span class="line">    env_keep+=<span class="string">"LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES"</span>, env_keep+=<span class="string">"LC_MONETARY</span>
<span class="line">    LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE"</span>, env_keep+=<span class="string">"LC_TIME LC_ALL LANGUAGE LINGUAS</span>
<span class="line">    _XKB_CHARSET XAUTHORITY"</span>, secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin</span>

<span class="line">User root may run the following commands on this host:</span>
<span class="line">    (ALL) ALL</span>

users

概要: 查看当前正在使用的用户

语法格式: users

使用示例:

  • 查看当前正在使用的用户
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># users</span></span>
<span class="line">root</span>

whoami

概要: 查看当前正在使用的用户

语法格式: whoami [OPTION]…

使用示例:

  • 显示当前用户
<span class="line">1</span>
<span class="line">2</span>
<span class="line">[root@ansheng ~]<span class="comment"># whoami </span></span>
<span class="line">root</span>

基本网络操作命令

telnet

概要: 执行telnet指令开启终端机阶段作业,并登入远端主机。

[root@ansheng ~]# yum -y install telnet

语法格式: telnet[参数][主机]

参数:

参数 说明
-a 尝试自动登入远端系统。
-c 不读取用户专属目录里的.telnetrc文件。
-d 启动排错模式。
-k<域名> 使用Kerberos认证时,加上此参数让远端主机采用指定的领域名,而非该主机的域名。
-l<用户名称> 指定要登入远端主机的用户名称。
-S<服务类型> 设置telnet连线所需的IP TOS信息。

使用示例:

  • 查看本机22端口是否打开
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
<span class="line">[root@ansheng ~]<span class="comment"># telnet 127.0.0.1 22</span></span>
<span class="line">Trying 127.0.0.1...</span>
<span class="line">Connected to 127.0.0.1.</span>
<span class="line">Escape character is <span class="string">'^]'</span>.</span>
<span class="line">SSH-2.0-OpenSSH_5.3</span>

ssh

概要: 登陆远程主机

语法格式: ssh [hostname] -u user

参数:

参数 说明
-p port 连接远程机器上的 port。 不用这个选项,默认就是22
-u 指定登陆的用户

使用示例:

  • 通过SSH登陆127.0.0.1
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
<span class="line">[root@ansheng ~]<span class="comment"># ssh 127.0.0.1</span></span>
<span class="line">The authenticity of host <span class="string">'127.0.0.1 (127.0.0.1)'</span> can<span class="string">'t be established.</span>
<span class="line">RSA key fingerprint is 55:f1:c0:57:1e:a2:96:1b:bb:0d:85:03:d0:e7:56:42.</span>
<span class="line">Are you sure you want to continue connecting (yes/no)?</span></span>

scp

概要: 用户不同的Linux系统之间来回copy文件

语法格式: cp [OPTIONS] SOURCE DEST — 从源路径copy文件到目的路径 cp [OPTIONS] SOURCE… DIRECTORY — 将多个源文件copy到指定的目录(多个源文件用空格分隔)

参数:

参数 说明
-r 表示递归copy,若source中含有目录名,则将目录下之档案亦皆依序拷贝至目的地
-f 表示force,若目的地已经有相同档名的档案存在,则在复制前先予以删除再行复制

使用示例:

  • 从本地复制到远程
<span class="line">1</span>
<span class="line">[root@ansheng ~]<span class="comment"># scp /home/daisy/full.tar.gz root@172.19.2.75:/home/root</span></span>
  • 从远程复制到本地
<span class="line">1</span>
<span class="line">[root@ansheng ~]<span class="comment"># scp root@/172.19.2.75:/home/root/full.tar.gz /home/daisy/full.tar.gz</span></span>

wget

概要: 下载文件

语法格式: wget [参数] [URL地址]

参数:

参数 概述
-O 制定文件下载路径
-v 显示命令的执行过程

使用示例:

  • 下载网易yum源到root目录下
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
9
10
11
12
<span class="line">[root@ansheng ~]<span class="comment"># ls</span></span>
<span class="line">[root@ansheng ~]<span class="comment"># wget -O /root/163yum.repo http://mirrors.163.com/.help/ansheng-Base-163.repo</span></span>
<span class="line">--2015-01-02 18:35:32--  http://mirrors.163.com/.help/ansheng-Base-163.repo</span>
<span class="line">Resolving mirrors.163.com... 123.58.173.106</span>
<span class="line">Connecting to mirrors.163.com|123.58.173.106|:80... connected.</span>
<span class="line">HTTP request sent, awaiting response... 200 OK</span>
<span class="line">Length: 2006 (2.0K) [application/octet-stream]</span>
<span class="line">Saving to: “/root/163yum.repo”</span>

<span class="line">100%[==================================================================================================================================>] 2,006       --.-K/s   <span class="keyword">in</span> 0.03s   </span>

<span class="line">2015-01-02 18:35:32 (60.7 KB/s) - “/root/163yum.repo” saved [2006/2006]</span>

ping

概要: ping命令用于:确定网络和各外部主机的状态;跟踪和隔离硬件和软件问题;测试、评估和管理网络。如果主机正在运行并连在网上,它就对回送信号进行响应。每个回送信号请求包含一个网际协议(IP)和 ICMP 头,后面紧跟一个 tim 结构,以及来填写这个信息包的足够的字节。缺省情况是连续发送回送信号请求直到接收到中断信号(Ctrl-C)。

ping 命令每秒发送一个数据报并且为每个接收到的响应打印一行输出。ping 命令计算信号往返时间和(信息)包丢失情况的统计信息,并且在完成之后显示一个简要总结。ping 命令在程序超时或当接收到 SIGINT 信号时结束。Host 参数或者是一个有效的主机名或者是因特网地址。

语法格式: ping [参数] [主机名或IP地址]

参数:

参数 说明
-c 指定要被发送(或接收)的回送信号请求的数目
-i 秒数:设定间隔几秒送一个网络封包给一台机器,预设值是一秒送一次

使用示例:

  • ping百度五次
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
9
10
11
<span class="line">[root@ansheng ~]<span class="comment"># ping -c 5 www.baidu.com</span></span>
<span class="line">PING www.a.shifen.com (61.135.169.121) 56(84) bytes of data.</span>
<span class="line">64 bytes from 61.135.169.121: icmp_seq=1 ttl=128 time=7.38 ms</span>
<span class="line">64 bytes from 61.135.169.121: icmp_seq=2 ttl=128 time=9.64 ms</span>
<span class="line">64 bytes from 61.135.169.121: icmp_seq=3 ttl=128 time=7.29 ms</span>
<span class="line">64 bytes from 61.135.169.121: icmp_seq=4 ttl=128 time=5.17 ms</span>
<span class="line">64 bytes from 61.135.169.121: icmp_seq=5 ttl=128 time=16.9 ms</span>

<span class="line">--- www.a.shifen.com ping statistics ---</span>
<span class="line">5 packets transmitted, 5 received, 0% packet loss, time 4044ms</span>
<span class="line">rtt min/avg/max/mdev = 5.176/9.295/16.974/4.091 ms</span>

ifconfig

概要: ifconfig 命令用来查看和配置网络设备。当网络环境发生改变时可通过此命令对网络进行相应的配置。

语法格式: ifconfig [网络设备] [参数]

参数:

参数 说明
up 启动指定网络设备/网卡
down 关闭指定网络设备/网卡。该参数可以有效地阻止通过指定接口的IP信息流,如果想永久地关闭一个接口,我们还需要从核心路由表中将该接口的路由信息全部删除
-a 显示全部接口信息
add 给指定网卡配置IPv6地址
del 删除指定网卡的IPv6地址

使用示例:

  • 显示网络设备信息(激活状态的)
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<span class="line">[root@ansheng ~]<span class="comment"># ifconfig </span></span>
<span class="line">eth0      Link encap:Ethernet  HWaddr 00:0C:29:B7:4F:EA  </span>
<span class="line">          inet addr:172.16.10.10  Bcast:172.16.10.255  Mask:255.255.255.0</span>
<span class="line">          inet6 addr: fe80::20c:29ff:feb7:4fea/64 Scope:Link</span>
<span class="line">          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1</span>
<span class="line">          RX packets:9938 errors:0 dropped:0 overruns:0 frame:0</span>
<span class="line">          TX packets:6016 errors:0 dropped:0 overruns:0 carrier:0</span>
<span class="line">          collisions:0 txqueuelen:1000 </span>
<span class="line">          RX bytes:11781130 (11.2 MiB)  TX bytes:682043 (666.0 KiB)</span>

<span class="line">lo        Link encap:Local Loopback  </span>
<span class="line">          inet addr:127.0.0.1  Mask:255.0.0.0</span>
<span class="line">          inet6 addr: ::1/128 Scope:Host</span>
<span class="line">          UP LOOPBACK RUNNING  MTU:65536  Metric:1</span>
<span class="line">          RX packets:38 errors:0 dropped:0 overruns:0 frame:0</span>
<span class="line">          TX packets:38 errors:0 dropped:0 overruns:0 carrier:0</span>
<span class="line">          collisions:0 txqueuelen:0 </span>
<span class="line">          RX bytes:4936 (4.8 KiB)  TX bytes:4936 (4.8 KiB)</span>

ifup

概要: 启动指定网卡

语法格式: ifup [网络设备]

使用示例:

  • 启动网卡eth0
<span class="line">1</span>
<span class="line">[root@ansheng ~]<span class="comment"># ifup eth0</span></span>

ifdown

概要: 关闭指定网卡

语法格式: ifdown [网络设备]

使用示例:

  • 关闭eth0网卡
<span class="line">1</span>
<span class="line">[root@ansheng ~]<span class="comment"># ifdown eth0</span></span>

netstat

概要: netstat用于显示与IP、TCP、UDP和ICMP协议相关的统计数据,一般用于检验本机各端口的网络连接情况。

语法格式: netstat [-acCeFghilMnNoprstuvVwx][-A<网络类型>][–ip]

参数:

参数 说明
-a或 显示所有连线中的Socket
-c或 持续列出网络状态
-C或 显示路由器配置的快取信息
-g或 显示多重广播功能群组组员名单
-i或 显示网络界面信息表单
-l或 显示监控中的服务器的Socket
-n或 直接使用IP地址,而不通过域名服务器
-p或 显示正在使用Socket的程序识别码和程序名称
-t或 显示TCP传输协议的连线状况
-u或 显示UDP传输协议的连线状况

使用示例:

  • 查看系统运行的TCP连接状态
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
<span class="line">[root@ansheng ~]<span class="comment"># netstat -tlnp</span></span>
<span class="line">Active Internet connections (only servers)</span>
<span class="line">Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name   </span>
<span class="line">tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1001/sshd           </span>
<span class="line">tcp        0      0 :::22                       :::*                        LISTEN      1001/sshd</span>

nslookup

概要: 查看域名解析

语法格式: nslookup [server]

使用示例:

  • 查看百度域名解析
<span class="line">1</span>
<span class="line">2</span>
<span class="line">3</span>
<span class="line">4</span>
5
6
7
8
9
10
<span class="line">[root@ansheng ~]<span class="comment"># nslookup www.baidu.com</span></span>
<span class="line">Server:         172.16.10.2</span>
<span class="line">Address:        172.16.10.2<span class="comment">#53</span></span>

<span class="line">Non-authoritative answer:</span>
<span class="line">www.baidu.com   canonical name = www.a.shifen.com.</span>
<span class="line">Name:   www.a.shifen.com</span>
<span class="line">Address: 61.135.169.125</span>
<span class="line">Name:   www.a.shifen.com</span>
<span class="line">Address: 61.135.169.121</span>
admin
版权声明:本站原创文章,由admin2016-07-12发表,共计13571字。
转载提示:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)