一周学习总结
###第二章 Linux基础入门
主要章节内容:
####终端
查看当前终端命令:tty
执行效果:
[[email protected] data]# tty
/dev/pts/0
####shell
什么是shell:Shell是Linux系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核执行。
简单来说就是shell是用户和内核之间的通道,编译用户输入的命令传输给内核,再让内核去调用硬件。
shell也被称为Linux的命令解释器
shell是一种高级程序设计语言
一个Linux系统里有各种shell类型,centos的默认shell是bash
显示当前使用的shell命令为:echo $SHELL
显示当前系统使用的所有shell:cat /etc/shells
[[email protected] testdir]# cat /etc/shells
/bin/sh
/bin/bash
/usr/bin/sh
/usr/bin/bash
/bin/tcsh
/bin/csh
####命令提示符
[[email protected] testdir]# #为超级用户 $为普通用户
显示当前命令提示符格式:echo $PS1
[[email protected] testdir]# echo $PS1
[\[email protected]\h \W]\$
提示符相关含义:
\e 控制符\033 \u 当前用户
\h 主机名简称 \H 主机名
\w 当前工作目录 \W 当前工作目录基名
\t 24小时时间格式 \T 12小时时间格式
! 命令历史数 # 开机后命令历史数
####shell中的命令分为两类;内部命令和外部命令
内部命令是由shell自带的,而且通过某种命令形式提供
外部命令是在文件系统路径下有对应的可执行程序文件。
Hash缓存表
首先要知道系统的外部命令的路径都有哪些,以centos7为例:
运行echo $PATH命令
[[email protected] testdir]# echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
这些为系统外部命令的所有路径(不同路径之间用:隔开)。也就是说,运行外部命令时系统是在这些路径中进行搜索,搜到以后执行并将命令路径记录到hash表中,下次会先在hash表中进行匹配,如果表中没有再去PATH中搜索
hash 显示hash缓存
hash -t name 显示缓存中name命令路径
hash -d name 删除缓存中name命令
hash -r 清除全部缓存
alias 显示当前shell中的所有命令别名
[[email protected] testdir]# alias
alias cp=‘cp -i‘
alias egrep=‘egrep --color=auto‘
alias fgrep=‘fgrep --color=auto‘
alias grep=‘grep --color=auto‘
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 which=‘alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde‘
定义别名:alias name=‘ls’ 这样定义的别名只是对当前终端有效,若想永久有效则要在/etc/bashrc文件中进行配置,然后使其生效source /path/to/config_file
撤销别名:unalias
####日期和时钟
Linux有两种时钟:系统时钟和硬件时钟
date 显示系统时间
date +%F 2019-07-25这种方式显示时间
clock 显示硬件时钟
-s 以硬件时钟为准,矫正系统时钟
-w 以系统时钟为准,矫正硬件时钟
时区:/etc/localtime
修改时区
在centos7中,timedatectl list-timezones 列出所有时区
timedatectl set-timezone Asia/Shanghai 将时区修改为上海 CST
####简单命令
创建新screen会话:screen -S [SESSION]
加入screen会话:screen -x [SESSION]
echo 命令
echo "$VAR_NAME” 变量会替换,弱引用
echo ‘$VAR_NAME’ 变量不会替换,强引用
命令行扩展符:$()或`` 例如:
echo "This system‘s name is $(hostname) "
This system‘s name is server1.example.com
echo "i am whoami
"
i am root
另外还有括号扩展:{}
history 显示执行的历史命令
whatis 显示命令的简短描述
原文地址:https://blog.51cto.com/14473148/2424376