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. 新学python画一个爱心

    from turtle import * def curvemove(): for i in range(200): right(1) forward(1) color('yellow','red') ...

  2. vue项目性能优化,优化项目加载慢的问题

    一. 对路由组件进行懒加载: 如果使用同步的方式加载组件,在首屏加载时会对网络资源加载加载比较多,资源比较大,加载速度比较慢.所以设置路由懒加载,按需加载会加速首屏渲染.在没有对路由进行懒加载时,在C ...

  3. [BZOJ2252]矩阵距离(BFS)

    题意 输入矩阵m行n列(m<=500,n<=500),只含0.1,输出离每个元素距离最近的1的距离,其中距离定义为D(aij,akl)=abs(i-k)+abs(j-l). 示例: 输入: ...

  4. css与dom的渲染与解析

    js阻塞文档渲染与解析那么css呢? 结论一.css:阻塞渲染,不阻塞dom解析 <head> <script> document.addEventListener('DOMC ...

  5. node.js 从入门到。。。

    本人安装环境为 mac ,所以只记录了 mac 下的操作步骤 1.安装 node node的国内下载地址:http://nodejs.cn/download/ 安装之后,在终端输入指令 node -v ...

  6. vue 中 直接操作 cookie 及 如何使用工具 js-cookie

    转载:https://www.cnblogs.com/xiangsj/p/9030648.html vue 中直接操作 cookie 以下3种操作方式 set: function (name, val ...

  7. 获取txt md5值上传文件完整性校验

    网络上传文件到服务器 做md5 校对.判断文件是否破坏 首先求txt文件的md5值 ,1万条数据 求出的值 文件MD5:e5467b6a8e3c26af8c5af0bda3739280 服务器处理程序 ...

  8. 微信小程序发送ajax

    微信小程序通过 wx.request发送ajax请求 1. GET wx.request({ url: app.globalData.pubSiteUrl + 'user-information/ge ...

  9. rn最新版测试

    1.使用软件版本rn-4.20.4.zipdrago-4.22.03 2.启动drago选择菜单‘对弈’ -> ‘对弈引擎设置’,点按钮‘添加’,选择‘已安装’,输入:姓名‘rn-4.20.4’ ...

  10. Android自动化之Monkey环境搭建(一)

    从事测试行业两年了,一直很喜欢研究新技术,但是最近有点慵懒.正好公司新出了产品,督促我学习monkey用来测其稳定性. 网上搜索了很久,内容总是很零散,通常需要找几篇文章才能搭好环境.特写此文,一篇文 ...