bash基本特性

bash基本介绍

bash是shell的一种,shell是计算机与用户交互的主要接口,狭义上的shell指的是CLI(command line interface命令行接口),用户输入命令,bash判断并执行。

bash的登陆提示

bash登陆时会有相应的提示,提示内容可以在相关文件中自定义,比如自定义一个欢迎页面,centos的自定界面在/etc/motd文件,这个文件默认是空的,Ubuntu的自定界面在~/.profile文件中,但是本身这个文件是有很多内容的,要追加不能覆盖。通过一些字符画工具制作登陆欢迎界面是个不错的选择。

#CentOS
sudo echo "welcome to here" >>/etc/motd #Ubuntu
echo "welcome to here" >>~/.profile
#双引号中的内容可以替换为任意你想在登陆界面显示的内容,Ubuntu下只针对当前登陆用户 /etc/issue
#issue文件中也可以增加登陆时显示的信息,同时可以使用\n,\l,t等选项分别显示不同的内容

bash命令提示符

bash的命令提示符默认由用户名+主机名+当前目录+命令标识符组成

[root@centos ~]#
#此即为命令提示符的默认形式,命令标识符为#为root用户为$则为普通用户

命令提示符的样式可由PS1这个变量定义

echo $PS1
#输出PS1这个变量的值 PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"
#将命令提示符的颜色更改为红色背景,黄色字体并且闪动,这个时变量的临时改变登出即丢失,如果想要永久改变需要写入文件 #写入文件
echo 'PS1="\[\e[1;5;41;33m\][\u@\h \W]\\$\[\e[0m\]"' >>/etc/profile.d/1.sh
#这里的1.sh可以跟换成任意名称的.sh双引号总的内容可以更换为任意你想在登陆界面显示的内容

主机名与系统内核版本

主机名是安装时定义的名称以.分割,命令提示符只显示第一个.之前的内容。主机名需要有一定含义,主机名不能包含下划线,应用短横线代替。

#显示主机名
hostname #显示Linux内核版本
uname -r #显示操作系统版本
lsb_release -a #CentOS7上没有预装这个命令
cat /etc/redhat-release

PATH环境变量

echo $PATH
#打印环境变量

环境变量即为输入命令时bash会去查找的地方,如果在变量中的位置有这条命令就会执行,否则会提示command not found错误

关闭和重启计算机

init 0      #关闭计算机
init 1 #切换为单用户模式
init 2
init 3 #切换为命令行模式
init 4
init 5 #切换为图形界面模式
init 6 #重启计算机
poweroff #关闭电源即为关闭计算机
halt #关闭计算机
reboot #重新启动计算机
shutdown #-r重新启动;-h关闭计算机;后面跟时间即可指定时间关机

内部命令、外部命令、命令别名与hash缓存机制

内部命令:bash自带的命令,并且开机就加载在内存中

外部命令:外部命令使用时,从硬盘里加载,如果命令不是内部命令,就从环境变量中找外部命令

type COMMAND        #判断命令属于内部还是外部命令,内部命令会提示buttin外部命令则会提示路径

enable              #查看内部命令,-n禁用内部命令

alias               #显示含有别名的命令,NAME=”COMMAND“

unalias             #取消命令别名

hash                #查看已经缓存的外部命令,并且显示击中次数,-r清空缓存,-d删除某条缓存

echo                #输出相应内容,既是内部命令又是外部命令

内部命令、外部命令和命令别名的命令执行顺序:首先执行命令别名,其次执行内部命令,在hash中的外部命令,最后才是在环境变量寻找外部命令

基本命令汇总

lscpu                                           #查看cpu信息
runlevel #运行级别查看分别是上一次运行级别,这次运行级别
tty #查看当前终端
free #查看内存信息,还有另一种方法cat /proc/meminfo
lsblk #查看硬盘关盘等设备信息
ip a #查看IP地址等信息
who #查看当前谁在登陆
whoami #查看执行此命令的用户
who am i #查看执行命令用户的详细信息
w #查看当前此电脑有谁登陆,在执行什么命令
echo '- - -' > /sys/class/scsi_host/host2/scan #触发内核重新扫描硬盘

Xshell

Xshell是一款好用的windows的ssh软件,可以连接Linux系统:

  1. 更改编码以防止乱码
  2. 完全版本可以将图形程序在windows打开窗口
  3. 可以传输文件

2-1 bash基本特性的更多相关文章

  1. bash及其特性(笔记)

    bash及其特性:shell: 外壳GUI:Gnome, KDE, XfceCLI: sh, csh, ksh, bash, tcsh, zsh root, student程序:进程 进程:在每个进程 ...

  2. Shell中bash的特性小结

    Shell: 用户与操作系统之间完成交互式操作的一个接口程序,为用户提供简化了的操作:上世纪的70年代中期在贝尔实验室,Bourne位Unix开发了一个shell程序Bourne Shell,简称sh ...

  3. linux bash基本特性

    一.bash 基础特性 (1)命令历史的功能 history: 环境变量 HISTSIZE:命令历史记录的条数 HISTFILE: ~/.bash_history 每个用户都有自己独立的命令历史文件 ...

  4. Bash的特性

    Bash的特性 1. tab补全 #命令补全 [root@clf ~]# user  #命令补全useradd     userdel     usermod     usernetctl  user ...

  5. linux文件系统及bash基础特性

    linux文件系统 一.根文件系统 linux被识别的第一个被称为根之间关联的文件系统叫做根文件系统(rootfs),其他分区要想被读到,需要挂载到根目录的某个挂载点(根的子目录)上.根文件系统至关重 ...

  6. 【Linux相识相知】bash的特性

    命令历史 shell进程会记录用户提交执行过的命令 可以是用history查看: [root@localhost dev]# history ss -tnl ifconfig vi /etc/sysc ...

  7. Day3(2)bash的特性

    bash的基础特性: (1)命令历史 history 环境变量: HISTSIZE:命令零食记录的条数: HISTFILE:~/.bash_history: HISFILESIZE:命令历史文件记录历 ...

  8. Bash 基础特性

    命令别名  alias 显示当前shell中定义的所有别名  alias 别名='原始命令'  unalias 别名 取消定义的别名在命令前加\使用命令本身,而不是别名(或者使用绝对路径执行命令使用命 ...

  9. linux的学习之路--(五)bash及其特性

    操作系统组成作用shell是离用户最近的程序 shell:外壳 两类 GUI:Gnome,KDE,Xfce CLI:sh, csh,ksh,bash(都是程序,就是功能支持的不同而已) 进程:在每个进 ...

随机推荐

  1. Bash Shellshock(CVE-2014-6271)破壳漏洞测试

    0x01 漏洞原理 Bash使用的环境变量是通过函数名称来调用的,导致漏洞出问题是以"(){"开头定义的环境变量在命令ENV中解析成函数后,Bash执行并未退出,而是继续解析并执行 ...

  2. leetcode 四数之和

    这里我们可以考虑将 n 数之和降低为一个数加上 n-1 数之和的问题.依次降低 ,最低是二数之和的问题 ,二数之和问题容易解决.主要在于从 n 到 n-1 的过程需要理解 :下列代码中前几个 if 是 ...

  3. 知识点整理-mysql怎么查看优化器优化后的sql

    背景 1.新建两张表 CREATE TABLE t1 (m1 )); CREATE TABLE t2 (m2 )); 2.插入些数据 INSERT INTO t1 VALUES(, , , 'c'); ...

  4. 亿级mongodb数据迁移

    1. 预先准备有效数据单号池,通过单号拉取数据处理 单号表默认为1 01 使用findAndModify 更新单号表状态为 2 读取单号 循环读取100 条 02 通过运单号批量查询 Aladin_W ...

  5. VS开发】C中调用C++文件中定义的function函数

    [VS开发]C中调用C++文件中定义的function函数 标签(空格分隔): [VS开发] 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 精要一揽 C调用 ...

  6. 洛谷 题解 P1196 【[NOI2002]银河英雄传说】

    并查集大难题. 看了题解之后才有思路,调了很久很久才AC,当然要写一篇题解来纪念一下. 先来分析一下这些指令的特点,很容易发现对于每个M指令,只可能一次移动整个队列,并且是把两个队列首尾相接合并成一个 ...

  7. Python if __name__ == '__main__': 理解

    if __name__ == '__main__':是为了区分.py文件是自己直接被执行还是被其他文件调用. 当.py文件直接被执行时,默认的是 __name__ = '__main__',因此条件成 ...

  8. 虚拟机(VM)安装openwrt-koolshare软路由

    ⒈创建虚拟机 **软路由选择Windows操作系统,因为我们需要在PE环境中进行软路由的写入,固件类型选择BIOS,网络类型选择使用仅主机模式网络,虚拟磁盘类型选择IDE[一定要选择IDE模式],SC ...

  9. ubuntu18下Docker运行springboot项目

    1.springboot项目打成jar包 mvn install 2.编写Dockerfile # 基础镜像使用java FROM java:8 # 作者 #MAINTAINER sk # VOLUM ...

  10. (二十四)JDBC应用的事务管理(转账事例)

    目录 利用 Dbutils 进行事务操作(以转账为例) 转账实现方式(不优雅的方式) ThreadLocal 类 转账实现方式(优雅的方式) 利用 Dbutils 进行事务操作(以转账为例) 我们只在 ...