1、环境变量
2、帮助
3、时间
4、引用
5、命令历史
6、FHS
7、命令别名
8、Globbing文件名通配
9、命令,路径补全
10、快捷键
============================================
shell:是用户和linux(或者kernel)之间的接口程序,你在提示符下输入的每个命令都先由shell解释(命令语言解释器)然后传给linux kernel,
shell分类:sh,bash,csh,ksh,zsh等,常用为bash.
shell启动:在你成功登录系统后启动,并始终作为你与kernel交互手段,直到你退出系统,每个用户都有一个缺省的shell,在/etc/passwd中查看
bash:
1、环境变量:
我理解是系统启动之后初始化系统为各类程序运行提供默认运行环境(参数或变量),比如PATH,PS等
set:查看当前系统所设定的环境变量
修改环境变量,以PATH为例:
echo $PATH //查看当前shell下,二进制程序要执行时,所搜索的路径,其他变量都可以以echo $变量名 这样的方式显示
[root@neolinux ~]# echo $PATH /usr/lib64/qt-3.3/bin:/usr/local/mysql/bin:/usr/local/apache/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
临时修改:export
[root@neolinux ~]# export PATH=/usr/local/apache/bin:/usr/local/apache/sbin:$PATH [root@neolinux ~]# echo $PATH /usr/local/apache/bin:/usr/local/apache/sbin:/usr/lib64/qt-3.3/bin:/usr/local/mysql/bin:/usr/local/apache/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
永久修改:将export 命令直接写入家目录.bashrc文件中,~/.bashrc,或者/etc/profile等文件中
#命令学习:echo,export,basename(取路径基名),dirname(取路劲目录名)
2、获取帮助
shell命令分为内置命令和外部命令
内置命令:在shell程序中实现的命令
外部命令:在文件系统上,某位置有一个与命令名称对应的可执行程序
内置命令:#help Command
外部命令:#Command –help或者使用手册#man Command
man的使用机制:
翻屏
空白键:向文件尾部翻一屏
b键:向文件首部翻一屏
回车键:向文件尾部翻一行
k键:向文件首部翻一行
Ctrl+d:向文件尾部翻半屏
Ctrl+u:向文件首部翻半屏
文本搜索:
/搜索关键字:向文件尾部搜索
?搜索关键字:向文件首部搜索
n:与搜索命令相同的方向,搜索下一个
N:与搜索命令相反的方向,搜索上一个
q:退出man帮助
#命令学习:type,which,hash
3、时间
查看当前系统时间date
%y:两个数字显示年份(00...99),测试命令#date +%y %Y:四个数字显示年份,#date +%Y %m:两位数字显示月份 #date +%m %M:显示分钟 #date +%M %d:显示当日号数 #date +%d %H:显示小时(00..23) #date +%H %S:显示秒数 #date +%S %F:显示日期 #date +%F 2016-06-01 等于#date +%Y-%m-%d //常用+%F-%H-%M-%S
linux有两个时钟:
硬件时钟:类似在主板上,由电池维持工作。
软件时钟:开启时读取硬件时钟
hwclock:
-s:以硬件时钟为准
-w:以软件时钟为准
#命令学习:shutdown,reboot,halt,poweroff,mkdir,pwd
#mkdir 创建目录
-p:创建多级目录时,先创建父目录,在创建子目录
-v:显示创建目录的过程
4、引用:
' ':单引号,表示强引用,单引号范围内变量不会进行替换,
[root@neolinux ~]# echo '$PS1' //直接显示$PS1这四个字符 $PS1 [root@neolinux ~]#
" ":双引号,表示弱引用,双引号范围内能够执行变量替换
[root@neolinux ~]# echo "$PS1" //显示PS1环境变量的赋值 [\u@\h \W]\$ [root@neolinux ~]#
“:反引号,拼音输入法模式下,波浪线那个按键,命令替换,引用命令的执行结果
[root@neolinux ~]# echo `pwd` //先执行pwd命令,在将命令的执行结果给echo输出 /root [root@neolinux ~]#
5、命令历史
bash保存了过去曾经执行过的命令列表,使用上下箭头可以翻看此前曾经执行过的命令。
当前shell保存历史命令在用户家目录.bash_history
查看历史命令:
#history //查看历史命令
-d #:删除第#号个命令
-c :清空历史命令
#~/.bash_history
快速调用之前执行过的命令,(常用):
!!:执行上一条命令
!Command:执行上一次执行Command命令
!$:引用上一个命令的最后一个参数,或者按ESC键松开,在按.
HISTSIZE:命令历史中可以保存的命令个数
echo $HISTSIZE //显示,export或者配置文件修改
HISTFILE:命令历史文件
HISTFILESIZE:命令历史文件中可以保存命令的个数
HISTCONTROL:控制命令的生成
6、FHS(Filesystem Hierarchy Standard)文件系统目录标准
/bin:所有用户可执行的程序 /usr/bin /usr/local/bin /sbin:管理员可执行的程序 /usr/sbin /usr/local/bin /boot:存储系统引导文件:内核,ramfs文件,bootloader(grub) /dev:设备文件目录 /etc:配置文件目录 /home:普通用户目录,在此目录下,有与用户名同名的目录作为用户家目录 /root:管理员家目录 /lib,/lib64:库文件目录 /proc:伪文件系统,内核参数的映射 /sys:伪文件系统,
linux文件类型:
普通文件 | 目录文件 | 链接文件 | 字符设备 | 块设备 | 管道文件 | 套接字文件 |
– or f | d | l | c | b | p | s |
srwxrwxrwx 1 mysql mysql 0 Jun 1 17:29 mysql.sock
s | rwxrwxrwx | 1 | mysql | mysql | 0 | Jun 1 17:29 | mysql.sock |
文件类型(套接字文件) | 权限(属主,属组,其他人) | 硬链接数 | 属主 | 属组 | 文件大小 | 文件最后一次修改时间 | 文件名 |
#命令学习:ls,cd,cat,tac.head,tail,more,less,cp,mv,rm,touch,stat,file
7、命令别名
为一个命令与参数起另外一个名字
#alias 别名='命令' #alias cdnet='cd /etc/sysconfig/network-scripts/'
#unalias 别名 取消命令别名
8、Globbing文件名通配
* | ? | [] | [:upper:] | [:lower:] | [:digit:] | [:alpha:] | [:alnum:] | [:space:] | [:punct:] | [^] |
任意长度任意字符(也包括空) | 任意单个字符 | 指定字符范围内的任意单个字符 | 所有单个大写字母 | 所有单个小写字母 | 0~9中一个数字 | 所有单个大小写字符 |
所有单个大小写字母或者数字 |
单个空白字符 | 单个特殊字符 | 范围外任意单个字符 |
注意:?*表示至少有单个字符,例如:a?*b,匹配不到ab
9、路径,命令
shell当你在输入命令的一部分或者路径的一部分,他就猜测到你是大概需要什么,可以通过按Tab显示或者补全,类似配置网络设备的命令补全,多按Tab就对了
10、快捷键
Ctrl+a | Ctrl+e | Ctrl+u | Ctrl+k | Ctrl+l | Ctrl+c | Ctrl+z |
切换光标至行首 | 切换光标至行尾 | 删除光标至行首内容 | 删除光标至行尾的内容 | 清屏(clear) | 取消或终止执行 | 暂停目前工,fg切回 |
原创文章,作者:nice_neo_linux,如若转载,请注明出处:http://www.178linux.com/16917