shell基础

1、学习shell的什么

  • shell命令
  • shell的命令集成
  • shell程序的控制结构
  • shell的配置文件
  • shell用户环境
  • shell命令解析机制

2、pstree命令

[root@DG3 /]# pstree
init─┬─NetworkManager
     ├─abrt-dump-oops
     ├─abrtd
     ├─acpid
     ├─atd
     ├─auditd───{auditd}
     ├─automount───4*[{automount}]
     ├─avahi-daemon───avahi-daemon
     ├─certmonger
     ├─console-kit-dae───63*[{console-kit-da}]
     ├─crond
     ├─cupsd
     ├─dbus-daemon
     ├─dnsmasq
     ├─hald───hald-runner─┬─hald-addon-acpi
     │                    └─hald-addon-inpu
     ├─irqbalance
     ├─ksmtuned───sleep
     ├─libvirtd───10*[{libvirtd}]
     ├─login───bash───su
     ├─master─┬─pickup
     │        └─qmgr
     ├─5*[mingetty]
     ├─modem-manager
     ├─rpc.idmapd
     ├─rpc.statd
     ├─rpcbind
     ├─rsyslogd───3*[{rsyslogd}]
     ├─sshd─┬─sshd─┬─bash───su───bash───sqlplus
     │      │      └─bash───su───bash
     │      └─sshd───bash───pstree
     ├─tnslsnr───2*[{tnslsnr}]
     ├─udevd───2*[udevd]
     ├─vmtoolsd
     ├─vmware-vmblock-───3*[{vmware-vmblock}]
     └─wpa_supplicant

 3、查看bash的版本

[root@DG3 shell]# bash --version
GNU bash, version 4.1.2(1)-release (x86_64-redhat-linux-gnu)
Copyright (C) 2009 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.

 4、查看系统有哪些别名

[root@DG3 shell]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias vi='vim'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' 

5、查看命令的类型

[root@DG3 shell]# type pwd
pwd is a shell builtin 
[root@DG3 shell]# type clear
clear is hashed (/usr/bin/clear)

 6、删除别名

unalias命令用来删除别名。若要暂时关闭一个别名,可以在别名的名字前加上一个反斜杠。

\vi

7、shell的基本元素

  • #!/bin/bash           第一行,必须有的,指出shell的类型 
  • #                                             注释
  • 变量
  • 流程控制

8、清楚文件内容脚本

#!/bin/bash
#this is clear
cat /dev/null>/var/log/messages
echo "messages has been cleared up!"

 9、程序编译和运行过程

  • 一般步骤:

编辑文件->保存文件->将文件赋予可以执行的权限->运行及排错

  • 常用到的命令:

vi,编辑、保存文件

ls -l 查看文件权限

chmod改变程序执行权限

直接键入文件名运行文件

 10、shell程序设计

  • 一般结构
    • shell类型
    • 函数
    • 主过程

11、shell特性

  • 别名
  • 命令替换
  • 后台处理
  • 变量
  • 管道
  • 重定向
  • 模式匹配
  • 特殊字符

 12、文件名替换

将元字符展开为文件名的过程又被称作文件名替换或globbing

元字符 含义
* 匹配零个或多个字符
? 匹配一个字符
[abc] 匹配a、b、c这组字符中的一个
[!abc] 匹配a、b、c这个字符以外的某个字符
{a,ile,ax} 匹配一个活一组字符
[a-z] 匹配在a至z这个范围内的某个字符
[!a~z] 匹配不在a至z这个范围内的某个字符
\ 转义或禁用后面那个元字符
原文地址:https://www.cnblogs.com/arcer/p/2989725.html