2016/10/14作业

操作类:

1、设置自己的终端提示符,要求终端登陆时:

    a> 需要带颜色 

    b> 需要显示当前执行到了第几条命令 

    c> 显示当前登录终端,主机名和当前时间

首先我们要了解一个环境变量,那便是“PS1”。

PS1是Linux终端用户的一个环境变量,用来说明命令行提示符的设置。

[root@Shining lianxi]# echo $PS1
[\u@\h \W]\$

关于PS1的用法我们可以通过使用"man bash"命令来查看其转译字符的意义。

 	          \a     an ASCII bell character (07)
              \d     the date in "Weekday Month Date" format (e.g., "Tue May 26")
              \D{format}
                     the  format is passed to strftime(3) and the result is inserted into the
                     prompt string; an empty format results in a locale-specific time  repre‐
                     sentation.  The braces are required
              \e     an ASCII escape character (033)
              \h     the hostname up to the first `.'
              \H     the hostname
              \j     the number of jobs currently managed by the shell
              \l     the basename of the shell's terminal device name #当前shell的终端名
              \n     newline
              \r     carriage return
              \s     the  name  of  the  shell, the basename of $0 (the portion following the
                     final slash)
              \t     the current time in 24-hour HH:MM:SS format #24小时制,当前时间
              \T     the current time in 12-hour HH:MM:SS format
              \@     the current time in 12-hour am/pm format
              \A     the current time in 24-hour HH:MM format
              \u     the username of the current user #当前用户用户名
              \v     the version of bash (e.g., 2.00)
              \V     the release of bash, version + patch level (e.g., 2.00.0)
              \w     the current working directory, with $HOME abbreviated with a tilde (uses
                     the value of the PROMPT_DIRTRIM variable)#当前工作目录
              \W     the  basename  of  the current working directory, with $HOME abbreviated
                     with a tilde
              \!     the history number of this command
              \#     the command number of this command #当前命令的命令号 
              \$     if the effective UID is 0, a #, otherwise a $
              \nnn   the character corresponding to the octal number nnn
              \\     a backslash
              \[     begin a sequence of non-printing characters,  which  could  be  used  to
                     embed a terminal control sequence into the prompt
              \]     end a sequence of non-printing characters

颜色设置

  在PS1中设置字符序列颜色的格式为:[\e[F;Bm]

  其中“F”为字体颜色,编号30~37;“B”为背景色,编号40~47。

  下面看下颜色表:

  前景背景 颜色

  ————————

  30 40 黑色

  31 41 红色

  32 42 绿色

  33 43 黄色

  34 44 蓝色

  35 45 紫红色

  36 46 青蓝色

  37 47 白色

  效果控制代码:

  代码 意义

  ————————-

  0 OFF

  1 高亮显示

  4 underline

  5 闪烁

  7 反白显示

  8 不可见

  修改提示符颜色示例

  $ PS1="\[\e[32m\]#\##\[\e[31m\]\u@\[\e[36m\]\h\w]\$\[\e[m\"

  说明:

  1、‘\[\e[32m\]’用来设置‘#\##’的颜色为绿色,\#就是显示现在运行的是第几条命令,前后两个#是分隔符

  2、‘[\e[31m\]’设置‘\u@’的颜色为红色并高亮显示,如果指定多个数字需要用分号隔开。\u@ 就是当前登录的用户名后跟一个‘@’符号。

  3、‘\[\e[36m\]’设置‘\h\w’为青蓝色,\h表示主机名的第一位,如果主机名为shining.acg,那么就显示shining;\w将显示完整的绝对路径。

  4、‘\$’ 提示字符,如果是root时,提示符为:# ,普通用户则为:$。

  5、‘\[\e[m\]’使用来关闭颜色设置的。要是你没有这个的话;那么,你的命令提示符,包括你通过命令提示符输出的东西都是和最后一次的颜色设置相同。

  6、为了能够在启动和登录是可以保持刚刚设置的变量,需要将PS1的设置加入到用户home目录的.bashrc文件后。

     a> 需要带颜色                    \[\e[颜色数字代码m\]转译符

    b> 需要显示当前执行到了第几条命令         \#当前命令号     

    c> 显示当前登录终端,主机名和当前时间       `tty`当前登陆终端 \h当前主机名 \t当前时间

PS1设置:

blob.png

效果:

blob.png

2、使用shutdown命令于5分钟后重启自己的PC

shutdown命令可用“man shutdown”查看

DESCRIPTION
       shutdown may be used to halt, power-off or reboot the machine.

       The first argument may be a time string (which is usually "now"). Optionally, this
       may be followed by a wall message to be sent to all logged-in users before going
       down.

       The time string may either be in the format "hh:mm" for hour/minutes specifying the
       time to execute the shutdown at, specified in 24h clock format. Alternatively it
       may be in the syntax "+m" referring to the specified number of minutes m from now.
       "now" is an alias for "+0", i.e. for triggering an immediate shutdown. If no time
       argument is specified, "+1" is implied.
       #可以使用hh:mm格式来设置关机时间,也可使用+m格式来设置m分钟后关机,now表示现在关机

       Note that to specify a wall message you must specify a time argument, too.

       If the time argument is used, 5 minutes before the system goes down the
       /run/nologin file is created to ensure that further logins shall not be allowed.

OPTIONS
       The following options are understood:

       --help    #帮助
           Print a short help text and exit.

       -H, --halt #关机
           Halt the machine.

       -P, --poweroff    #关闭电源
           Power-off the machine (the default).

       -r, --reboot    #重启
           Reboot the machine.

       -h    #将系统的服务停掉后,立即关机
           Equivalent to --poweroff, unless --halt is specified.

       -k    #不关机,只显示关机信息
           Do not halt, power-off, reboot, just write wall message.

       --no-wall    #关机时不显示关机信息
           Do not send wall message before halt, power-off, reboot.

       -c    #取消关机
           Cancel a pending shutdown. This may be used cancel the effect of an invocation
           of shutdown with a time argument that is not "+0" or "now".

所有5分钟后重启命令为

2@root@Shining@20:26:44@~ $ shutdown -r +5
Shutdown scheduled for Sat 2016-10-15 20:31:52 CST, use 'shutdown -c' to cancel.
3@root@Shining@20:26:52@~ $ 
Broadcast message from root@Shining.ACG (Sat 2016-10-15 20:26:52 CST):

The system is going down for reboot at Sat 2016-10-15 20:31:52 CST!

3、学习使用man,学会使用

    a>ls递归列出/usr目录下所有文件

    b>列出目录下的隐藏文件

“man(空格)命令”即查看命令的帮助文档,可使用pageup、pagedown和空格翻页;或者使用上下键和回车键翻行;使用‘/搜索内容’进行搜索;使用‘q’退出文档。

ls -R为递归显示文件夹下面的内容,以/home为例:

18@root@Shining@20:39:04@~ $ ls -R /home/
/home/:
pirate

/home/pirate:
core.3875  Desktop  Documents  Downloads  lianxi  Music  Pictures  Public  Templates  Videos

/home/pirate/Desktop:

/home/pirate/Documents:

/home/pirate/Downloads:

/home/pirate/lianxi:
sleep500.sh  test.sh

/home/pirate/Music:

/home/pirate/Pictures:

/home/pirate/Public:

/home/pirate/Templates:

/home/pirate/Videos:

ls -a为列出所有文件,包括隐藏文件,以/home/pirate为例:

37@root@Shining@20:42:56@~ $ ls -a /home/pirate/
.              .bash_profile  core.3875  .esd_auth      .mozilla  Templates
..             .bashrc        Desktop    .ICEauthority  Music     Videos
.bash_history  .cache         Documents  lianxi         Pictures  .viminfo
.bash_logout   .config        Downloads  .local         Public

文档类:

    1. FHS文件系统各目录功能整理出文档

    2. MAN手册各章节功能介绍及快捷键键位整理

    3.
Linux文件类型及颜色标识整理

1、FHS文件系统各目录功能整理出文档

1./bin目录

    该目录下的命令可以被root与一般账号所使用,由于这些命令在挂接其它文件系统之前就可以使用,所以/bin目录必须和根文件系统在同一个分区中。

    /bin目录下常用的命令有:cat、chgrp、chmod、cp、ls、sh、kill、mount、umount、mkdir、[、test等。其中“[”命令就是test命令,我们在利用Busybox制作根文件系统时,在生成的bin目录下,可以看到一些可执行的文件,也就是可用的一些命令。

2./sbin 目录

    该目录下存放系统命令,即只有系统管理员(俗称最高权限的root)能够使用的命令,系统命令还可以存放在/usr/sbin,/usr/local/sbin目录下,/sbin目录中存放的是基本的系统命令,它们用于启动系统和修复系统等,与/bin目录相似,在挂接其他文件系统之前就可以使用/sbin,所以/sbin目录必须和根文件系统在同一个分区中。

    /sbin目录下常用的命令有:shutdown、reboot、fdisk、fsck、init等,本地用户自己安装的系统命令放在/usr/local/sbin目录下。

3、/dev目录

    该目录下存放的是设备与设备接口的文件,设备文件是Linux中特有的文件类型,在Linux系统下,以文件的方式访问各种设备,即通过读写某个设备文件操作某个具体硬件。比如通过"dev/ttySAC0"文件可以操作串口0,通过"/dev/mtdblock1"可以访问MTD设备的第2个分区。比较重要的文件有/dev/null, /dev/zero, /dev/tty, /dev/lp*等。

4./etc目录

    该目录下存放着系统主要的配置文件,例如人员的账号密码文件、各种服务的其实文件等。一般来说,此目录的各文件属性是可以让一般用户查阅的,但是只有root有权限修改。对于PC上的Linux系统,/etc目录下的文件和目录非常多,这些目录文件是可选的,它们依赖于系统中所拥有的应用程序,依赖于这些程序是否需要配置文件。在嵌入式系统中,这些内容可以大为精减。

5./lib目录

    该目录下存放共享库和可加载(驱动程序),共享库用于启动系统。运行根文件系统中的可执行程序,比如:/bin /sbin 目录下的程序。

6./home目录

    系统默认的用户文件夹,它是可选的,对于每个普通用户,在/home目录下都有一个以用户名命名的子目录,里面存放用户相关的配置文件。

7./root目录

    系统管理员(root)的主文件夹,即是根用户的目录,与此对应,普通用户的目录是/home下的某个子目录。

8./usr目录

    /usr目录的内容可以存在另一个分区中,在系统启动后再挂接到根文件系统中的/usr目录下。里面存放的是共享、只读的程序和数据,这表明/usr目录下的内容可以在多个主机间共享,这些主要也符合FHS标准的。/usr中的文件应该是只读的,其他主机相关的,可变的文件应该保存在其他目录下,比如/var。/usr目录在嵌入式中可以精减。

9./var目录

    与/usr目录相反,/var目录中存放可变的数据,比如spool目录(mail,news),log文件,临时文件。

10./proc目录

    这是一个空目录,常作为proc文件系统的挂接点,proc文件系统是个虚拟的文件系统,它没有实际的存储设备,里面的目录,文件都是由内核临时生成的,用来表示系统的运行状态,也可以操作其中的文件控制系统。

11./mnt目录

    用于临时挂载某个文件系统的挂接点,通常是空目录,也可以在里面创建一引起空的子目录,比如/mnt/cdram /mnt/hda1 。用来临时挂载光盘、移动存储设备等。

12. /tmp目录

    用于存放临时文件,通常是空目录,一些需要生成临时文件的程序用到的/tmp目录下,所以/tmp目录必须存在并可以访问。    

    那我们利用Busybox制作根文件系统就是创建这上面的这些目录,和这些目录下面的各种文件。

对于嵌入式Linux系统的根文件系统来说,一般可能没有上面所列出的那么复杂,比如嵌入式系统通常都不是针对多用户的,所以/home这个目录在一般嵌入式Linux中可能就很少用到,而/boot这个目录则取决于你所使用的BootLoader是否能够重新获得内核映象从你的根文件系统在内核启动之前。一般说来,只有/bin,/dev,/etc,/lib,/proc,/var,/usr这些需要的,而其他都是可选的。

2、MAN手册各章节功能介绍及快捷键键位整理

man命令的基本使用方式为‘man+命令’

man文档中各个部分的意义:    

    NAME      简短的指令、资料名称说明   
    SYNOPSIS    简短的指令下达语法(syntax)简介   
    DESCRIPTION  较为完整的说明,这部分最好仔细看看!   
    OPTIONS     针对 SYNOPSIS 部分中,有列举的所有可用的参数说明   
    COMMANDS    当这个程式(软体)在执行的时候,可以在此程式(软体)中下达的指令   
    FILES      这个程式或资料所使用或参考或连结到的某些档案   
    SEE ALSO    可以参考的,跟这个指令或资料有相关的其他说明   
    EXAMPLE     一些可以参考的范例   
    BUGS      是否有相关的BUG 

在man文档中的操作快捷键:

e  ^E  j  ^N  CR  *  前进一行 
y  ^Y  k  ^K  ^P  *  后退一行 
f  ^F  ^V  SPACE   *  前进一个窗口 
b  ^B           *  后退一个窗口 
z               *  前进一个窗口 
w               *  后退一个窗口 
d  ^D         *  前进半个窗口 

u  ^U         *  后退半个窗口 

/pattern         *  向前查找包含pattern的行.
?pattern          *  向后查找包含pattern的行.
n               *  查找下一个pattern行.

N               *  查找上一个pattern行.

g  <            *  跳转到文件第一行
G  >            *  跳转到文件最后一行
p  %            *  跳转到文件最开始 

[Page Down]       *  向下翻一页   
[Page Up]       *  向上翻一页   
[Home]          *  去到第一页   
[End]          *  去到最后一页 
向上键         *  向上滚一行
向下键         *  向下滚一行  

3、Linux文件类型及颜色标识整理

:普通文件

d :目录文件

b :块设备文件

c :字符设备文件

p :管道文件

s :套接字文件

l :链接文件

白色    :普通文件

蓝色    :目录文件

黄色    :设备文件

    红色    :压缩文件

粉红    :套接字文件

浅蓝    :符号链接

    

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

(0)
上一篇 2016-10-19 14:19
下一篇 2016-10-19 14:19

相关推荐

  • LVM2 逻辑卷管理工具

    LVM2:  LVM: Logical Volume Manager, Version: 2  dm: device mapper,将一个或多个底层块设备组织成一个逻辑设备的模块; /dev/dm-#  /dev/mapper/VG_NAME-LV_NAME /dev/mapper/vol0-root /dev/VG_NAME/…

    Linux干货 2015-09-19
  • 计算机操作系统与简单命令

    计算机系统的组成 硬件:主机(cpu、内存等),外部设备(输入设备键盘鼠标、输出设备显示屏;硬软盘   等等)。 软件:主要由操作系统和应用程序构成。 计算机硬件的组成部分及工作流程图 输入设备——存储器——CPU运算——输出设备   服务器主要分类有: 塔式服务器:立式PC相像 机架式服务器:统一标准宽度19英寸(48.26c…

    Linux干货 2017-02-14
  • 一个简单的负载均衡集群:web服务

    一个简单的负载均衡集群:以web服务为例 实验环境:三台主机(CentOS 7.3)             主机1:IP地址 172.18.0.88(Haproxy代理服务器)             主机2:IP地址 172….

    Linux干货 2017-05-17
  • 冒泡算法,源码安装http,yum浅谈

    生成10个随机数,采用冒泡算法进行升序或降序排序 #!/bin/bash #author:maoxiong QQ:111111111 #verson:1.0  date:2016-08  #illustrate: declare -a array #create 10 randomnum for num in {0..9} do &nbs…

    Linux干货 2016-08-26
  • 马哥教育网络班21期-第四周课程练习

    Do one thing at a time,and do well. 小僧近期忙的去尿尿的时间都要挤出来…..! 无人能理解 zZzz 复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 编辑/etc/group文件,添加组hadoop。 手动编辑/etc/pass…

    Linux干货 2016-07-29
  • 马哥教育网络班20期+第2周课程练习

    马哥教育网络班20期+第2周课程练习 练习题: 1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。3、请使用命令行展开功能来完成以下练习:   (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d  …

    Linux干货 2016-06-23