Linux基础解析;echo;man;centos;runlevel;PS1;screen;shell 倒三角;date -d等命令—-fazion blog at22.July

Linux基础解析

fazionlan blog in 178Linux.July 20nd.

内核、版本信息

# uname -a                      # Get the kernel version
# lsb_release -a                   # System release version
#cat /etc/redhat-release -> /etc/centos-release   #可修改版本信息
#cat /etc/issue                    #用于用户登录提示的文件
#id -u (user)                     #查看用户uiduid = 0 是管理员,root不代表管理员

终端类型

物理终端:/dev/console     #物理显示器和键盘

虚拟终端:/dev/pts/*      #软件虚拟的

交互式接口:在终端附加的一个交互式应用程序

GUI(Graphic User Interface):Desktop{GNOME(c,gtk)、KDE(c++,Qt)、XFCE}

CLI(Command Line Interface):Shell{sh、csh、tcsh、ksh、bash}

Shell 是Linux的命令解释器,在Linux中提供了用户与内核进行交互操作的接口,它接收用户命令并把它送到内核去执行

GNU Bourne-Again Shell(bash)是GNU计划中重要工具软件之一,目前是Linux标准的shell,与sh兼容

echo $SHELL         #show current shell type
cat /etc/shells       #查看所有的shell类型
getent passwd fz
#getent passwd ftp     #查看用户使用的shell

Linux系统中Shell所处的位置

Image.bmp

shell的内建命令与外部命令

shell内、外命令 eg:
#tpye ls      
>ls is a shell builtin
#tpye ifconfig 
>ifconfig is /sbin/ifconfig
  • 内建命令:系统自带,集成在shell中,存放在/bin/bash,用户登录自动加载到内存

  • 外部命令:存放在在可执行程序的路径中,$ hash查看已经加载的外部命令

echo $PATH     #显示PATH变量定义的路径,外部命令的路径需加到环境尽量中
  • 别名命令—>内建命令 —>缓存(已加载的外部命令)—>PATH变量中的目录(外部命令)—>找不到报错

  • 如果缓存有但是命令已不在缓存的目录,用$ hash -d command清除缓存,或者hash -r清除所有缓存

#enable -n cd      #禁用内建命令cd
#enable cd        #启用内建命令cd

alias 查看所有命令别名

#unalias command
#alias ls='ls --color=auto'
\ls = 'ls' = /bin/ls        #执行原始命令
  • which 找外部可执行程序的路径,通过 PATH环境变量 到该路径内查找可执行文件,所以基本的功能是寻找可执行文件  

  • whereis 会在一个数据库文件中查找,可找到可执行命令和manpage(帮助文件)

  • /sbin       #管理员使用的命令

  • /bin                         #普通用户使用的命令

  • 安装可执行文件./file   default(d)     #使用安装过程所有默认选项,不需确认

  • 命令格式 command options arguments

  •   \  断行,注意添加空格  ls \-l\ /etc

  • ls;pwd;date                    #执行多条命令,分号中间不能有空格

date命令

MMDDhhmm[CC]YY.ss    #设置时间

[+FORMAT]

  %Y:四位年份   |    %y: 2位年份  |    %m: 月  |    %M:分  |    %d: 日    |    %H: 时   |    %S:秒    |    %D: 日期   |    %F: 日期

  • clock -w 以系统时间为准,校正硬件时钟   

  • clock -s 以硬件时钟为准,校正系统时间

screen命令

screen 是用于同一台机器上,同一用户的命令行的远程协助

先开启screen再执行备份,防止断网而中断备份

screen -S aaa      #新建同一台机器的screen
screen -ls        #显示已经打开的screen
screen -x aaa      #第二台机器加入aaa会话

第二台机器输入exit退出会话

Ctrl +a 、d (按住Ctrl{按a,松开按d)     #取消当前screen
screen -r aaa                             #恢复aaa的会话

echo回显函数,反引号`、单引号'、双引号"、$( )的区别

  • echo默认加换行;-n 末尾不换行;-e识别转义符号\

转义字符:
   \a 警示字符,通常是ASCII的BEL字符;
   \b 退格;
   \c 最后不加上换行符号,并且这个参数之后的任何字符都将被忽略掉;
   \f 换行但光标仍旧停留在原来的位置(即竖直位置不变);
   \n 换行且光标移至行首;
   \r 回车符(光标移至行首,但不换行);
   \t 水平制表符TAB;
   \v 与\f相同;
   \\ 反斜杠字符;
   \0nnn 八进制数值;
  • 没有变量和命令时, ‘ ’ 与 “ ” 无区别

  • echo $PATH              #加 “ ”弱引用,识别变量; ‘  ’强引用,原样输出;

  • `  `  = $() 识别命令和变量

  • ${ }   #引用变量时与其他字符相连

  • echo “echo $PATH ” =  echo echo $PATH

  • echo ‘echo $PATH’   

  • echo `echo $PATH`   =  echo $(echo PATH)

Image (2).bmp

  • touch `date +%Y`        #创建年的文件

  • touch `cal`           #创建好多个文件

  • echo -e  ' \a'        #识别该声符\b退格\r覆盖

  • echo -e  "\033[41-47;31-37mhello\033[0m"      #hello的背景色;前景色

  • reset                              #恢复终端乱码

  • /etc/DIR_COLORS                       #文件名的颜色

{ }实现全排列

  • { } 大括号的使用,实现全排列

  • touch 、rm  f{1,2,3} . {pdf,txt}

  • echo f{1,3,5}.{pdf,txt}  

Tab命令补全

  • $ 2T – All available commands(common) #命令行补全,我认为是 Bash 最好用的一点 

  • $ (string)2T – All available commands starting with (string)

  • $ /2T – Entire directory structure including Hidden one

  • $ ./2T – Only Sub Dirs inside including Hidden one

  • $ *2T – Only Sub Dirs inside without Hidden one

  • $ ~2T – All Present Users on system from "/etc/passwd" #第一次见到,很好用

  • $ $2T – All Sys variables #写Shell脚本的时候很实用

  • $ @2T – Entries from "/etc/hosts"  #第一次见到

  • $ =2T – Output like ls or dir #好像还不如 ls 快捷

manpage与help

外部命令:bash根据PATH变量的路径搜索

whatis 在数据库中查找,显示命令的简要说明,显示在manpage的章节

#makewhatis             #cent6生成数据库,忙等待
#mandb                #cent7生成数据库,速度快
#whatis passwd           #显示/etc/passwd和passwd外部命令的man章节
  • help +内建命令             #内建命令不能用man page,不对的

  • type查看是否内部命令

man                       #外部命令或标准库的man page

  • man -f rm  =  whatis rm

  • man -k rm                #所有带有‘rm’的命令或文件

history

~目录/ .bash_history文件中存放历史命令,刚执行的命令保存在内存中即history命令看到的,当用户登出时写入.bash_history文件中

#↑(Ctrl+p) #显示上一条命令 
#↓(Ctrl+n) #显示下一条命令 
#!num    #执行命令历史列表的第num条命令 
#!!     #执行上一条命令 
#!?string?  #执行含有string字符串的最新命令 
#Ctrl+r   #然后输入若干字符,开始向上搜索包含该字符的命令,继续按Ctrl+r,搜索上一条匹配的命令 
#Ctrl+s   #与Ctrl+r类似,只是正向检索

练习1:用echo打印带颜色的闪烁倒三角

[fz@cent6 Desktop]$ c1=41
[fz@cent6 Desktop]$ c2=31
[fz@cent6 Desktop]$ k=0
[fz@cent6 Desktop]$ read -p "input line number:" num
input line number:30
[fz@cent6 Desktop]$ for i in `seq 0 $num`; do
> k=$[$i*2]
> while [ $k -lt $[$num*2-1] ]; do
> echo -ne "\033[$[${c1}+$[$k%5]];37m\033[4m\033[5m*\033[0m"
> k=$[$k+1]
> done
> echo
> for k in `seq 0 $i`; do
> echo -ne " "
> done
> done

gif5新文件.gif

练习2:显示前10天的年月日;显示后20天的年月日

Linux基础解析;echo;man;centos;runlevel;PS1;screen;shell 倒三角;date -d等命令----fazion blog at22.July

Linux基础解析;echo;man;centos;runlevel;PS1;screen;shell 倒三角;date -d等命令----fazion blog at22.July

 

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

(0)
hellochelloc
上一篇 2016-07-29
下一篇 2016-07-29

相关推荐

  • sed文本编辑工具

    用法:sed[option]… ‘script’ inputfile…常用选项:-n:不输出模式空间内容到屏幕,即不自动打印-e: 多点编辑-f:/PATH/SCRIPT_FILE: 从指定文件中读取编辑脚本-r: 支持使用扩展正则表达式-i.bak: 备份文件并原处编辑script:‘地址命令…

    Linux干货 2017-05-02
  • bash脚本基础

    一,概述 shell脚本 程序:指令+数据 程序编程风格: 过程式:以指令为中心,数据服务于指令 对象式:以数据为中心,指令服务于数据 shell程序:提供了编程能力,解释执行 编程逻辑处理方式: 顺序执行 循环执行 选择执行 shell编程:过程式、解释执行 编程语言的基本结构: 数据存储:变量、数组 表达式: a + b 语句:if shell脚本是包含…

    Linux干货 2016-08-19
  • 马哥教育网络班22期+第01周课程练习

    一、描述计算机的组成及其功能:     根据冯·诺依曼体系结构,把计算机划分为五大部件:运算器、控制器、存储器、输入设备、输出设备。 运算器(加法器):cpu的核心部件,也是计算机存在的价值之一,其采用二进制方式进行计算(因为电阻的存在,使得十进制无法精准处理);控制器:控制CPU读指令[立即数和间接数],指令含有运算器需要的数…

    Linux干货 2016-08-12
  • SSL应用系列之一:CA证书颁发机构(中心)安装图文详解

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/140518        如果你需要在组织里发布exchange,或者需要给IIS配置SSL的访问方…

    Linux干货 2015-03-26
  • Linux文件类型

    Linux文件类型常见的有:普通文件、目录文件、字符设备文件和块设备文件、符号链接文件等。 1、普通文件,颜色为白色 纯文本档 二进制文件 数据格式文件 2、目录文件,颜色为蓝色 当我们在某个目录下执行,看到有类似 drwxr-xr-x ,这样的文件就是目录,目录在Linux是一个比较特殊的文件。首字符是【d】字母。 3、字符设备和块设备…

    Linux干货 2016-10-16
  • Linux磁盘、文件系统管理

    对Linux而言,其哲学思想之一就是一切皆文件,因此Linux之上所有设备的操作都是通过文件接口来实现的,也就是说在访问设备的时候就如同访问一个文件一样,因为他们使用的都是文件系统接口。  设备也分种类,如:     1、块设备:block 其存取单位是“块”,如硬盘    &n…

    Linux干货 2016-08-29