init命令

linux系统启动分为六种级别分别为:

  • 运行级别0:系统停机状态,系统默认运行级别不能设为0,否则不能正常启动
  • 运行级别1:单用户工作状态,root权限,用于系统维护,禁止远程登陆
  • 运行级别2:多用户状态(没有NFS)
  • 运行级别3:完全的多用户状态(有NFS),登陆后进入控制台命令行模式
  • 运行级别4:系统未使用,保留
  • 运行级别5:X11控制台,登陆后进入图形GUI模式
  • 运行级别6:系统正常关闭并重启,默认运行级别不能设为6,否则不能正常启动
init 0:关机
init 6:重启

sysmctl组命令

reboot:重启
poweroff:关机

sync命令

sync命令主要是用于把数据从buffer写回磁盘

[root@localhost data]# sync 

cd命令详解

cd命令主要用于目录的切换比如

[root@localhost logs]# cd /home/
[root@localhost logs]# cd -
[root@localhost data]# cd ~

tree命令

以树状结构显示目录或者文件,想使用tree这个命令必须要先安装他的包,yum install tree

具体参数如下:

-d:只显示目录
-L:遍历目录最大层数,后面加几就到几

默认全部显示,例如:

[root@localhost data]# tree /data/
/data/
├── .txt
├── .txt
├── .txt
├── a
│   └── a.txt
└── lost+found

which命令

which命令主要是用来查找命令存放路径,比如:

[root@localhost data]# which cat
/usr/bin/cat

ls命令

ls命令主要用于浏览目录下的文件或者文件夹,./代表当前文件路径,.开头的文件或者目录代表隐藏文件或者目录

参数说明

-a:代表查看所有文件或者目录,包括隐藏文件
-l:使用较长格式列出信息
-t:按照时间从新到旧列出信息
-r:反转顺序,倒序
-S:按照文件大小排序

pwd命令

pwd命令主要是用于显示或者查看当前所在的目录路径

[root@localhost var]# pwd
/var

mkdir命令

mkdir命令主要是用来创建目录的

常用参数

-p:递归创建
-v:显示详细信息

history命令

主要是用来查看操作历史的

history
环境变量:
history -d:OFFSET#删除某一行
history -c: 清空历史命令
history #: 显示历史中最近的#条命令
history -a: 手动追加当前回话缓冲区的命令历史至历史文件中
调用历史中的命令:
!#:重复执行第#条命令
!!:
!string

cp命令

主要是用来复制文件或者目录

常用选项:
-i:交互式(默认已经有)
-r:递归复制目录及内部
-a:归档,保留文件所有属性

mv命令

主要是移动文件或者目录,或者重命名文件或者目录

mv [OPTION]... [-T] SOURCE DEST
mv [OPTION]... SOURCE... DIRECTORY
mv [OPTION]... -t DIRECTORY SOURCE...
如果SRC是单个文件:
常用选项:
-i:交互式
-f:强制

rm命令

主要是用来删除文件或者目录

常用选项:
-i:交互式
-f:强制删除
-r:递归
-v:显示详细信息
rm -rf

touch命令

主要是用来创建文件或者修改文件的访问时间

常用选项

-a: 只更改访问时间
-m:只修改更改时间

cat命令

主要是用来查看文件内容的,也可以多行输入

常用选项

-n:显示行号

[root@localhost var]# cat > .txt <<EOF
> this is line1
> this is line2
> this is line3
> EOF
note:追加重定向为>>,重定向为>

head命令

head一般也是用来查看问价的,只不过默认查看前10行

常用选项

-v:显示头部信息
-#:指定显示前#行

tail命令

tail跟head一样,只不过tail是用来查看末尾行的,默认是后10行

常用选项

-#:查看后#行信息

echo命令

echo命令主要是用来打印字符或者回显,例如打印echo ok会显示ok,echo ok > 1.txt会把ok输入到1.txt文件中

使用-e扩展参数选项时,与如下参数一起使用有着不同的含义

\b:删除前一个字符
\c:最后不加换行符号
\f:换行但光标扔停留在原来位置
\n:换行且光标移至首行
\t:插入tab
\v:与\f相同
\\:插入"\"字符

df命令

df常用于磁盘分区查询,常用命令为df -h

常用选项

-a:列出所有的文件系统的使用情况,包括虚拟文件系统
-h:以人们可读的形式显示出来
-i:查看inode总个数和已用个数

du命令

du命令常用于查看文件在磁盘中的使用量,常用命令du -sh,查看当前目录所有文件及目录的大小

常用参数

-c:显示总计信息
-s:只分别计算命令列中每个参数所占的总用量
-h:以可读性较好的方式显示尺寸(例如1KB,1MB,1GB)
-a:显示所有文件的磁盘用量,不仅仅是目录

man命令

man命令是用来查命令格式或者命令的用法,就记住一句话,有困难找男人帮忙,比如:

[root@localhost data]# man ls

shutdown命令

此命令可以关机,可以重启,用法为:

shutdown -h :10分钟后关机
shutdown -h :立即关机
shutdown -h now:1立即关机
shutdown -c:取消关机任务
shutdown -r : 10分钟后重启
shutdown -r :立刻重启
shutdown -r now:立即重启

date命令

显示系统时间和日期

可用参数为:

例1:

[root@localhost data]# date
2019年 11月 11日 星期一 :: CST

例2:如果想自定义格式如下:

[root@localhost data]# date +"%Y-%m-%d %H:%M:%S"
-- ::

systemctl

systemctl可以用来管理服务

[root@localhost data]# systemctl stop firewalld
#stop可以是start或者restart

hostname和hostnamectl

hostname和hostnamectl都可以修改主机名,但是hostnamectl是永久性修改,也就是说重启也生效,而hostname修改后重启失效

[root@mynode1 ~]# hostname mynode1
[root@mynode1 ~]# hostnamectl set-hostname mynode1

dd命令

dd命令在linux当中是一个很好用的命令,可以指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换,它比cp命令更加高效

[root@mynode1 ~]# dd if=lib.tar of=lib.tar.bak bs=400M count=

参数解释:

if:来源文件
of:目标文件
bs:block大小
count:总数

我们也可以利用dd命令来进行压力测试,然后关注linux系统的cpu和mem,硬盘的使用情况,例如:

[root@mynode1 ~]# dd if=/dev/zero of=/dev/null bs=500M count=

id命令

id命令是用来查询用户身份的

[root@mynode1 data]# id root
uid=(root) gid=(root) 组=(root)

whoami命令

whoami用来查看当前登录的用户

[root@mynode1 data]# whoami
root

w命令

w命令查看当前所有登录用户信息并且当前正在干什么

[root@mynode1 data]# w
:: up :, users, load average: 0.00, 0.09, 0.18
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 186月19 :31m .24s .24s -bash
root pts/ 192.168.254.1 186月19 145days .56s .56s -bash
root pts/ 192.168.254.1 : .00s : .01s w
root pts/ 192.168.254.1 : .00s .08s .04s top

ping,ifconfig,ip,telnet,uname命令

ping命令是用来测试网络连通性的

[root@mynode1 data]# ping -c  -W  www.baidu.com

ifconfig和ip是用来查看ip地址等信息

[root@mynode1 data]# ip a
: lo: <LOOPBACK,UP,LOWER_UP> mtu qdisc noqueue state UNKNOWN group default qlen
link/loopback ::::: brd :::::
inet 127.0.0.1/ scope host lo
valid_lft forever preferred_lft forever
inet6 ::/ scope host
valid_lft forever preferred_lft forever
: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu qdisc pfifo_fast state UP group default qlen
link/ether :0c::fa:b5: brd ff:ff:ff:ff:ff:ff
inet 192.168.254.13/ brd 192.168.254.255 scope global noprefixroute dynamic ens33
valid_lft 970sec preferred_lft 970sec
inet6 fe80::20c:29ff:fefa:b533/ scope link
valid_lft forever preferred_lft forever [root@mynode1 data]# ifconfig -a
ens33: flags=<UP,BROADCAST,RUNNING,MULTICAST> mtu
inet 192.168.254.13 netmask 255.255.255.0 broadcast 192.168.254.255
inet6 fe80::20c:29ff:fefa:b533 prefixlen scopeid 0x20<link>
ether :0c::fa:b5: txqueuelen (Ethernet)
RX packets bytes (50.2 MiB)
RX errors dropped overruns frame
TX packets bytes (94.3 MiB)
TX errors dropped overruns carrier collisions lo: flags=<UP,LOOPBACK,RUNNING> mtu
inet 127.0.0.1 netmask 255.0.0.0
inet6 :: prefixlen scopeid 0x10<host>
loop txqueuelen (Local Loopback)
RX packets bytes (9.7 KiB)
RX errors dropped overruns frame
TX packets bytes (9.7 KiB)
TX errors dropped overruns carrier collisions

telnet可以远程连接,默认为23号端口,也可以测试主机端口是否开启

[root@mynode1 data]# telnet 127.0.0.1
Trying 127.0.0.1...
Connected to 127.0.0.1.
Escape character is '^]'.
SSH-2.0-OpenSSH_7.

uname可以查看系统内核和主机名

[root@mynode1 data]# uname -n
mynode1
[root@mynode1 data]# uname -r
3.10.-.el7.x86_64
[root@mynode1 data]# uname -a
Linux mynode1 3.10.-.el7.x86_64 # SMP Thu Nov :: UTC x86_64 x86_64 x86_64 GNU/Linux

vim编辑器

介绍

vim编辑器是linux下标准的编辑器,就相当于windows当中的记事本一样,vim编辑器也是我们作为运维工程师必不可少的工具,学完vim编辑器,你可以在任意的unix内核的系统中畅行无阻比如:redhat,centos,AIX,UNIX等...

vim工作模式

命令模式(默认):刚进入vim的时候,默认就是命令模式,可以复制删除等
输入模式:可以输入内容
末行模式:可以输入很多管理命令,比如查找,显示行号等信息...

安装

yum install vim -y

命令模式

a:在当前光标所在字符的后面,转为输入模式
home:跳到当前光标所在行的行首
end:跳到当前光标所在行的末尾
o:在当前光标所在行的下方,新建一行,并转为输入模式
O:在当前光标所在行的上方,新建一行,并转为输入模式
r:替换光标处字符
x:删除当前光标的字符
D:删除光标往右的字符
d0:删除光标往左的字符
gg:把光标移动到第一行
shift+g:把光标移动到最后一行
dd:剪切光标所在行
ndd:剪切光标往下指定的行数(包括本行)
u:撤销上一次的操作
Ctrl+f:下滚一屏 
Ctrl+b:上滚一屏
dG:删除光标所在位置往下的所有行
yy:复制一行内容
nyy:指定复制光标往下的行数(包括本行)
p:粘贴
/findname:在文本中查找内容,如果遇到特殊符号需要\来进行转义
n:下一跳内容
N:上一跳内容
v 字符选择,会将光标经过的地方反白选择
V 行选择,会将光标经过的行反白选择
Ctrl+v 块选择,可以用长方形的方式选择资料 (提制竖列)
y 将反白的地方复制
d 将反白的地方删除
P 粘贴

末行模式

:wq                    保存退出
:q! 不保存退出
:s/old/new 在一行内替换头一个字符串old为新的字符串new
 :s/old/new/g   在一行内替换所有的字符串old为新的字符串new   
 :%s/old/new/g 在文件内替换所有的字符串old为新的字符串new    
 :%s/old/new/gc   进行全文替换时询问用户确认每个替换需添加c选项
:,$ s/^/#/g 第一行到最后一行的最前面加上#号
:,$ s/^#//g 第一行到最后一行去掉最前面的#号
:set nu 显示行号
:set nonu 去掉行号
:set nohl 去除高亮
:w filename 将当前数据保存到另一个文件
:r filename 将读取到的文件追加到光标的下一行
:! command 暂时离开vim编辑器执行系统的shell命令
:sp filename 开启一个新窗口,如果有加 filename, 表示在新窗口开启一个新文件,否则表示两个窗口为同一个文件内容(同步显示)。

note:编辑模式和末行模式都需要先进入到命令模式,用ESC来进入命令模式

bash基础特性1的更多相关文章

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

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

  2. Bash 基础特性

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

  3. Linux bash基础特性二

    shell脚本的组成部分 shebang 各种命令组合 编程变量种类 本地变量: 仅仅在当前的shell生效 环境变量: 在当前和子shell生效 局部变量: shell进程某代码片段 位置变量: $ ...

  4. Linux bash基础特性一

    命令别名 alias cdnet=”cd /etc/sysconfig/network-scripts” 针对用户的别名: “~/.bashrc” 针对系统的别名:”/etc/bashrc” 重读配置 ...

  5. bash基础特性3(shell编程)

    Linux上文本处理三剑客: grep:文本过滤工具 sed:stream editor,文本编辑工具 awk:文本报告生成器 grep -v:显示不能够被pattern匹配到的行 -i:忽略字符大小 ...

  6. bash基础特性2

    命令别名(alias) ()alias 显示当前shell进程所有可用的命令别名: ()alias NAME='VALUE' 定义别名NAME,相当于执行命令value ()unlias 撤销别名 注 ...

  7. linux bash基础特性

    使用history命令,取得命令历史,当bash进程结束后,会把命令历史存放到文件中,下次开机还能看到命令历史. 定制history:通过设置环境变量,来定制history 环境变量$HISTSIZE ...

  8. linux bash基本特性

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

  9. cmd 与 bash 基础命令入门

    身为一个程序员会用命令行来进行一些简单的操作,不是显得很装逼嘛!?嘿嘿~ ヾ(>∀<) cmd 与 bash 基础命令入门       简介       CMD 基础命令          ...

随机推荐

  1. NetCore+MySql+EF 数据库生成实体模型

    NetCore版本    2.1 1.点击“工具”->“NuGet包管理器”->“程序包管理器控制台” 分别安装以下几个包 Mysql 版本: MySql.Data.EntityFrame ...

  2. 【转】linux服务器性能查看

    转载自https://blog.csdn.net/achenyuan/article/details/78974729 1.1 cpu性能查看 1.查看物理cpu个数: cat /proc/cpuin ...

  3. chm制作及Haroopad使用(makedown工具)

    所需工具 1.网文快捕(可以制作chm的工具,在IE浏览起立可以右键把复制内容保存到软件里) 下载地址:http://www.05sun.com/downinfo/278913.html 2.Haro ...

  4. margin-top / padding-top 的百分比 到底是多少?

    之前,我以为 margin-top/padding-top 如果设置成%,得到的是 基于父对象总高度的百分比. 但是,这种想法是错的.因为在CSS标准里,是基于父对象宽度的百分比. <style ...

  5. HBase、MongoDB、cassandra比较

    前言 传统数据库遇到的问题,数据量很大的时候无法存储:没有很好的备份机制:数据达到一定数量开始缓慢,很大的话基本无法支撑:因此我们需要探究更加合适的数据库来支撑我们的业务. HBase 什么是HBas ...

  6. 用C语言编写一个简单的词法分析程序

    问题描述: 用C或C++语言编写一个简单的词法分析程序,扫描C语言小子集的源程序,根据给定的词法规则,识别单词,填写相应的表.如果产生词法错误,则显示错误信息.位置,并试图从错误中恢复.简单的恢复方法 ...

  7. Jenkins+Gradle+Docker打docker镜像包上传至s3

    gradle打包跟maven打包的环境搭建有相似之处,可参考maven打包https://www.cnblogs.com/chenchen-tester/p/6408815.html 进入Jenkin ...

  8. .Net 配置的简陋解决方案

    公司是做CS产品的, 最近分配给我一个活, 要求:     1. 公司程序启动时, 检测是否有配置文件, 没有的话则按默认值创建一个     2. 配置文件要加密, 不能让客户随便看到里面的参数   ...

  9. ECMA262学习笔记(一)

    Question1:怎样理解ECMAScript对象? Answer:ECMAScript对象是属性的集合,每个属性又有零个或者多个特性(如:writable).属性是持有其他对象.原始值.函数的容器 ...

  10. python基础之Day24

    1.补充内置函数 2.反射 什么是? 通过字符串操作类或者对象的属性 hasattri(a,"b")  判断能否访问到a.b setattri(a,"b",c) ...