Linux中命令的使用语法格式
命令 空格 选项(非必须) 空格 操作对象
ping命令:探测远程服务是否正常运行,也可以通过ping探测本机是否正常也可以正常上网
格式:
ping (探测的对象)
eg:ping www.baidu.com
命令行提示符: [root@localhost ~] # ping www.baidu.com
root :当前登录系统的用户
@ :分隔符,没有特殊意义
localhost:主机名,相当于身份证上的名字
~ :当前文件夹路径
(注:~代表的当前用户的家目录{家目录:是用户登录首次出现的目录})
# :当登录的用户是超级管理员(windows: Administartor,Linux: root)
$ : 当普通管理员登陆时,显示$
更改命令提示符:
source:重载文件,作用是使文件中的内容立即生效
PS1:命令提示符的变量,就是说PS1中存的是变量的内容,就是修改命令提示符
[root@localhost ~]# echo $PS1
[\u@\h \W]\$
变量:程序运行过程中实时改变的量
echo:打印内容 类比print()
更改系统时间:data-s"2021-9-14 20:00:00"
cd\:切换目录(Linux中的目录一切从根开始,就是 \)
[被切换到的目录的路径]
\u :代表当前登录的用户
\h :代表当前机器的主机名,只显示一个主机名
\H :代表当前机器的主机名,显示所有的主机名
\W :代表当前目录的名称 (相当于家目录)(~) eg:笔记
\w :代表当前目录的全路径
\d :代表日期,格式:星期几 月份 日期
\t :代表24小时制时间,格式:HH:MM:SS
\T :代表12小时制时间
\A :代表24小时制时间,格式HH:MM
\v :代表BASE的版本号(测试的版本)
[root@localhost localhost.localdomain /etc/sysconfig Tue Sep 14 20:20:05 08:20:05 20:20]$ PS1="[\u@\h \H \w \d \t \T \A \v]\$ "
注:在命令上修改的内容,并不能持久保存(等学习完vi/vim文件编辑器之后,在修改)
先了解:[root@localhost ~]# vi ~/.bashrc
修改命令提示符就是修改文件 ~/bashrc
[root@localhost ~]# source ~/.bashrc
[root@localhost localhost.localdomain ~ Tue Sep 14 21:33:20 09:33:20 21:33 4.2]$
系统目录路径类型
绝对路径:一个文件完整的路径(注:参照物是根目录)(/tmp/data)
相对路径:一个目录的参照路径(注:参照物一般是当前目录)(data)
切换目录中,特殊的路径:
~ :代表家目录
. : 代表当前目录(不切换)
.. : 代表上级目录
- : 代表上一次待的目录
假设需要跳转到/tmp使用相对路径实现
cd ../../tmp/
(有多少级就用../切换)
cd:切换目录
系统运行命令
关机
shutdown : 关闭操作系统
格式 :shutdown[选项][时间]
选项:
-h :指定关机的时间(分钟)
now :立即关机
10 :10分钟之后关机
-c :取消关机(前提:还未关机)
eg: 案例1:立即关机
shutdown -h now
shutdown -h 0
案例2:10分钟之后关机
shutdown -h 10
halt: 关机
格式:halt[选项]
eg: 案例:立即关机
halt :关闭机器硬件资源,禁用cpu的
halt-p :关机
poweroff:关机
init:设置计算机启动级别
[数字级别]
知识储备:
(输入:runlevel 或者 who -r)查看系统运行级别)
0:关机 (halt)
1:单用户模式
2:无网络多用户模式
3:命令行模式
4:未被使用
5:GUI模式(图形化桌面模式)
6:重启
查看运行级别
[root@localhost ~]$ runlevel # N 3
[root@localhost ~]$ who -r
run-level 3 2021-09-14 12:14
重启
reboot:重启系统
参数:
--halt:关闭操作系统(注:关闭硬件资源)
-p :关机重启
重启
shutdown:重启系统
选项:
-r:指定重启的时间
eg: 案例1:立即重启
shutdown -r now
shutdown -r 0
案例2: 10分钟后重启
shurtdown -r 10
halt:重启系统
选项:
--reboot:重启系统
reboot:重启操作
init:设置系统启动级别
6 :重启操作
poweroff:重启操作
选项:
--reboot:重启操作
快捷键:
ctrl+c #终止正在运行的命令
查看帮助信息命令
man
man命令的功能是查看某一条命令的详细解释
格式:
man[具体需要被查看的命令]
选项:
NAME :一句话说明被查看命令的作用
SYNOPSIS :展示命令的使用格式
OPTIONS :被查看的命令的所有选项
DESCRIPTION :命令的简介,详细的告诉我们当前这个命令具体是干什么的
Linux命令大全网址:man.linuxde.net
快捷键(man):
上下键:切换屏幕
搜索: (光标最好放在第一行,第二次定位,按n键查找下一个)
① :按/键
② : 输入搜索的内容
③ :回车
退出:按 q 键
help
格式:
-h
--help:
shutdown --help
help
常用的快捷键:
显示历史输入命令信息:上下键:
1.切换屏幕
2.根据使用命令的历史,切换命令(注:必须是同一个命令行窗口)
清空屏幕信息:ctrl+l /clear
取消/中断命令执行过程 ctrl+c
光标移动到行首与行尾:
ctrl + a(ctrl + 左):移动到行首
ctrl + e(ctrl + 右):移动到行尾
注意:剪切中的内容还在
剪切内容至行首:ctrl + u
剪切内容至行尾:ctrl + k
剪切粘贴内容: ctrl + y
系统命令补全(唯一):Tab键
了解:
锁定系统窗口: ctrl+s
解锁系统窗口: ctrl+q
Linux操作系统目录路径相关命令
PWD命令
pwd命令:查看当前所在目录的路径(绝对路径)
实际上使用的是系统环境变量中的pwd的值
printenv:打印系统环境变量
系统环境变量:
系统默认给自定义的变量
cd命令
切换目录
格式:
cd [目标路径]
例1: 切换到 /etc/sysconfig/network-scripts
[root@backup ~]# :cd /etc/sysconfig/network-scripts
例2: 由案例1,切换到/etc/目录
[root@backup network-scripts]# cd ../.. 或者 # cd /etc/
例3: 由案例2,切换至上一次所在目录
[root@backup etc]# cd -
/etc/sysconfig/network-scripts
[root@backup network-scripts]# cd -/etc
例4: 切换到所在的目录
[root@backup etc]# cd /root/
或者
[root@backup ~]# cd ~
例5:切换到上一级目录:
cd ..
案例4:切换到家目录
[root@localhost network-scripts]$ cd ~
[root@localhost ~]$ pwd
/root
[root@localhost ~]$ cd /root/
[root@localhost ~]$ pwd
/root
[root@localhost ~]$
mkdir命令 (文件夹)
创建目录的命令
格式:
mkdir [选项] [被创建的目标路径]
选项:
-p : 自动创建父级目录
在当前目录创建一个名为: test的文件夹
1. 创建单层目录
[root@backup ~]# mkdir test
2. 创建多层目录 --- 在/root/目录下创建一个test01目录
[root@backup ~]# mkdir /root/test01
3. 在/root目录下,创建一个/root/a/b/c目录
[root@backup ~]# mkdir -p /root/a/b/c
[root@backup ~]# tree ./a
./a
└── b
└── c
文件目录相关命令
创建文件的命令
touch 命令:
格式:
touch [选项] [被创建的文件的路径]
补充:
{}:表示循环
..:连续
,:不连续
1.创建一个名为abc的文件
touch abc
2.创建/root/a/abc
touch /root/a/abc (a必须已经存在)
3.创建test1~test100中的所有文件
touch test{1..100}
4.创建test111 ~ test199 ,并且在其每一个目录中都创建test文件
mkdir test1{11..99}
touch test1{11..99}/test
5.创建test003、test006、test009这三个文件
touch test00{3,6,9}
touch test11{3..9,1} #只显示test113..9,test111两个文件
查看数据信息命令
ls 命令:
ls命令:查看指定目录下的所有的文件
# ls默认跟的是当前所在路径
# linux中以.开头的文件即为隐藏文件
格式:
ls [选项] [指定的路径]
参数:
-l 查看文件详细信息
-a 查看隐藏文件
-h 格式化文件大小(前提: 必须跟-l参数一起使用)
--color=auto: 显示颜色(注: 不能通过颜色判断文件的属性)
显示数据详细信息:
ls -l
显示最新数据信息:
ls -lrt
补充:
ls -l 等于 ll
知识储备:
dd
if --- # 指定读取的文件
of --- # 指定写入的文件
bs --- # 定义一次写入多少内容
count --- # 定义写入多少次
eg: 要求生成一个1000MB的文件
[root@backup ~]# dd if=/dev/zero of=1.txt bs=10M count=100 # 结果是生成一个名为1.txt的文件,大小是1000M
100+0 records in
100+0 records out
1048576000 bytes (1.0 GB) copied, 6.64026 s, 158 MB/s
常见的文件的属性表示符:
f(FILE -):普通文件的标识符 -:文件的属性
d(DIRECTORY):普通文件夹的标识符
1.案例1:查看当前目录里的所有文件
[root@localhost ~]$ ls
anaconda-ks.cfg init.sh
2.案例2: 查看当前目录中文件的详细信息
[root@localhost ~]$ ls -l
-rw-------. 1 root root 1776 Sep 13 11:10 anaconda-ks.cfg
-rw-r--r--. 1 root root 5632 Sep 13 12:14 init.sh
- :文件的属性
rw-r--r--.: 文件的权限
r : 可读
w : 可写
x : 可执行
- :没有对应的权限
权限位:
属主(自己)
属组(指定组中的所有的用户的权限)
其他用户
1 : 硬链接个数
硬链接
软连接
root root 1776:属主 属组 文件的大小(单位:字节B)
8BITE=1Byte
1024Byte=1kb
1024kb=1MB
1024MB=1GB
1024GB=1TB
1024TB=1PB
Sep 13 12:14 : 文件创建的时间
init.sh : 文件的名称
alias:别名
格式: alias 字符=“相关的命令”
\ls -l \去掉本来的属性
unalias 别名 取消别名
案例1:查看系统所有的别名
alias
案例2:设置一个别名
alias lh="ls -l -h"
输出打印字符信息
echo:输出字符信息
格式:
echo [输出的内容] [重定向字符(非必须)] [重定向的文件(非必须)]
案例1:输出Hello World
[root@localhost ~]$ echo "Hello Wolrd"
Hello Wolrd
[root@localhost ~]$ echo "Hello Wolrd"
Hello Wolrd
案例2:将Hello Wolrd输出到文件2.txt中
[root@localhost ~]$ echo "Hello Wolrd" > 2.txt
知识储备:
> : 覆盖重定向(先将文件中原有的内容清空,然后写入内容到文件)
>> : 追加重定向(将内容写入到文件最后边,原有的内容不变)
重定向 : 把某个内容,通过某种方式输入到指定文件中,即为重定向
查看文件信息
cat:读取,打印,查看文件信息
格式:
cat 选项(非必须) [读取的文件路径]
选项:
-n :显示行号
案例1: 读取2.txt中的内容
[root@localhost ~]$ cat 2.txt
Hello Wolrd01
Hello Wolrd02
案例2: 读取/etc/hosts文件内容,输入到3.txt中
[root@localhost ~]$ cat /etc/hosts > 3.txt
[root@localhost ~]$ cat 3.txt
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
案例3: 将
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
写入到4.txt中
[root@localhost ~]$ cat > 4.txt <<EOF
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
EOF # 一定要顶格写
[root@localhost ~]$ cat 4.txt
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
案例4: 要求读取4.txt中的内容,并打印行号
[root@localhost ~]$ cat -n 4.txt
1 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
2 ::1 localhost localhost.localdomain localhost6 localhost6.localdomain6