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. php用PDO查询mysql数据库结果中文乱码

    中文都变成问号了 解决方法:在实例化pdo对象时语句中加上charset=utf8 $db = new PDO('dblib:host=your_hostname;dbname=your_db;cha ...

  2. TZOJ 2519 Regetni(N个点求三角形面积为整数总数)

    描述 Background Hello Earthling. We're from the planet Regetni and need your help to make lots of mone ...

  3. Analysis Services 中的服务器属性配置

    Analysis Services 中的服务器属性配置: https://docs.microsoft.com/zh-cn/sql/analysis-services/server-propertie ...

  4. 记录下本地修改php版本的过程, 本地PHP目录位置,PHP-FPM目录位置

    由于我在Cellar下安装了多个PHP版本,所以这里记录下如何修改本地的PHP版本 cd /usr/local/bin cp php71 php cp php71-fpm php-fpm vscode ...

  5. odoo 数据库到期提醒

  6. js千分位加逗号

    code function toThousands(num) { var numArr = num.split('.'); num = numArr[0]; var result = ''; whil ...

  7. Vue 获取元素样式 元素高度

    看到这个问题我第一时间想的竟然是JS 不知道你是怎么想的 不过昨天有一个小哥哥 问我一个Vue的 哈哈哈 get了 我当时问他为什么不用JS获取 他说 这个性能更高 那我们来看看这个高性能的获取元素高 ...

  8. Swoole addProcess的使用

    addProcess函数 是添加一个用户自定义的工作进程.这个有什么用呢?服务在启动后,可以用于监控.上报或者其他特殊的任务. 注意这个添加的进程是被manager进程管理的.如果这个添加的用户进程经 ...

  9. Web自动化附件上传

    在进行web界面自动化编写时,可以根据定位元素的方式进行编写,但是如果某一个功能涉及到有附件上传功能,那么该如何解决呢? 继续往下看>>>>> 场景:登录系统后,进行新增 ...

  10. MR执行环境有两种

    本地测试环境(windows): 在windows的hadoop目录bin目录有一个winutils.exe 1.在windows下配置hadoop的环境变量 2.拷贝debug工具(winutils ...