[#####成功在于你坚持了别人坚持不了的东西####]
Linux是一个主要通过命令行来进行管理的操作系统,和windows系统利用鼠标点击这类可视化管理大不相同。
Linux命令行管理,可以实现批量、自动化管理,智能化、以及可视化管理。是Linux技术人员必须掌握的技能
系统启动后,输入用户名和密码后,或者建立远程连接后,就意味着进入了命令行操作界面。
说明:命令行输入命令都是由bash/shell解释器执行的,bash解释器可以理解为是系统中的翻译官。
命令行出现提示符主要用于提示操作者可以输入相应命令
提示符种类介绍说明:
[root@Linux ~]# ff dd
[xiaoQ@Linux ~]$ pwd
提示符信息修改方法:
需要借助后面所学的环境变量知识概念,利用PS1变量概念进行修改调整。
[root@xiaoQ ~]# set|grep PS1
PS1='[\u@\h \W]\$ '
利用PS1环境变量的设置,构成了提示符信息的组成部分。(了解即可)
Linux命令行中在进行命令输入过程中,需要遵循一定的语法结构:
命令语法格式说明:
中括号[]表示可选,即命令的参数及路径信息或具体文件数据信息。
参数选项表示使用一个命令的不同功能。
命令、参数选项、文件或路径两两之间至少要有一个空格。
操作示例演示说明:
创建一个test文件,然后查看创建结果,最后删除掉,再查看删除结果:
[root@xiaoQ ~]# touch test.txt
[root@xiaoQ ~]# ls
anaconda-ks.cfg Image_001.png test.txt
[root@xiaoQ ~]# rm -f test.txt
[root@xiaoQ ~]# ls
anaconda-ks.cfg Image_001.png
在Linux系统中使用快捷键,可以有效提高命令行操作界面的执行效率。
序号 快捷键 解释说明
最有用快捷键
01 tab 命令或路径,以及文件等信息的补全键,Linux最常用快捷键
移动光标快捷键
01 Ctrl+A 光标回到命令行首
02 Ctrl+E 光标回到命令行尾
03 Ctrl+方向键右 光标向右以字符串为单位进行快速移动
04 Ctrl+方向键左 光标向左以字符串为单位进行快速移动
剪切、粘贴、清除快捷键
01 Ctrl+K 剪切(删除)光标处到行尾的字符
02 Ctrl+U 剪切(删除)光标处到行首的字符
03 Ctrl+W 剪切(删除)光标前的一个单词
04 Ctrl+Y 粘贴ctrl+U,crtl+k,ctrl+w删除的文本
系统管理控制快捷键
01 Ctrl+C 中断终端正在执行的任务或者取消整行命令输入
02 Ctrl+L 清除屏幕上的所有内容,并在屏幕上面开始一个新行,等同clear命令
03 Ctrl+D 退出当前shell命令行
04 Ctrl+Z 暂停执行在终端运行的任务(主要后面服务知识章节会使用)
05 Ctrl+S 锁定终端,使之无法输入内容(了解)
06 Ctrl+Q 解锁执行Ctrl+S的锁定状态(了解)
重复执行命令快捷键
01 Ctrl+R 搜索命令行使用过的历史命令记录
02 Esc+.(点) 获取上一条命令的最后的部分(空格分隔)
Linux运维学习过程中主要有三种自学的方法:
利用网站搜索功能:收集各种技能知识,并进行总结
利用官方网站介绍:针对服务程序,可以进行更深入的扩展学习
利用帮助命令自学:利用常见的man help info命令获取更多的帮助说明信息
功能说明:
用于查看命令或部分文件帮助说明信息
使用方法:
man [参数选项] 命令/文件
具体操作:
[root@xiaoQ ~]# man cp
NAME (可以获取命令简单介绍信息)
cp - copy files and directories
SYNOPSIS (具体命令语法结构信息)
cp [OPTION]... [-T] SOURCE DEST
cp [OPTION]... SOURCE... DIRECTORY
cp [OPTION]... -t DIRECTORY SOURCE...
DESCRIPTION (具有此命令可以使用的参数选项信息)
Copy SOURCE to DEST, or multiple SOURCE(s) to DIRECTORY.
Mandatory arguments to long options are mandatory for short options too.
-a, --archive
same as -dR --preserve=all
说明:可以利用字母Q退出帮助信息查看页面;可以利用/具体内容实现对指定信息检索
也可以利用–help获取更精炼的man手册的帮助信息
[root@xiaoQ ~]# cp --help
功能说明:
可以用于查看系统内置的命令的帮助信息。
内置命令:系统安装完毕,自身就有的命令(很多Linux版本都有的命令)
外置命令:需要借助第三方程序,进行安装部署后才具有的命令
使用方法:
help 内置命令
具体操作:
[root@xiaoQ ~]# help cd
cd: cd [-L|[-P [-e]]] [dir]
Change the shell working directory.
Change the current directory to DIR. The default DIR is the value of the
HOME shell variable.
bash, :, ., [, alias, bg, bind, break, builtin, caller, cd, command, compgen, complete,
compopt, continue, declare, dirs, disown, echo, enable, eval, exec, exit, export, false,
fc, fg, getopts, hash, help, history, jobs, kill, let, local, logout, mapfile, popd,
printf, pushd, pwd, read, readonly, return, set, shift, shopt, source, suspend, test,
times, trap, true, type, typeset, ulimit, umask, unalias, unset, wait
功能说明:
可以用于作为man或help命令的帮助信息补充
使用方法:
info 命令
具体操作:
[root@xiaoQ ~]# info ls
重启或关机命令:shutdown
shutdown是一个用来安全关闭或重启Linux系统的命令,系统在关闭重启之前会通知所有的登录用户,系统即将关闭重启
此时所有的新用户都不可以登录
语法格式:
shutdown [OPTION]… TIME [MESSAGE]
shutdown [选项] 时间 消息
常用参数:
序号 参数选项 功能说明
01 -r 重启系统,而不是关机,这个参数在系统重启时常用
02 -h 关闭系统,这个参数在系统关机时常用
03 -c 取消正在执行的shutdown指令
实践操作:
实践操作-01:指定多久关闭/重启系统
[root@xiaoQ ~]# shutdown -h 10
Shutdown scheduled for Wed 2021-11-24 04:25:22 CST, use 'shutdown -c' to cancel.
– 即将执行一个关闭主机的计划,大概在什么时间进行执行,可以使用shutdown -c取消计划
Broadcast message from [email protected] (Wed 2021-11-24 04:15:22 CST):
– 利用广播方式通知给所有系统操作用户
The system is going down for power-off at Wed 2021-11-24 04:25:22 CST!
– 这个系统将在什么时间点进行关机处理
[root@xiaoQ ~]# shutdown -r 10
Shutdown scheduled for Wed 2021-11-24 04:28:32 CST, use 'shutdown -c' to cancel.
– 即将执行一个关闭主机的计划,大概在什么时间进行执行,可以使用shutdown -c取消计划
Broadcast message from [email protected] (Wed 2021-11-24 04:18:33 CST):
– 利用广播方式通知给所有系统操作用户
The system is going down for reboot at Wed 2021-11-24 04:28:32 CST!
– 这个系统将在什么时间点进行重启处理
实践操作-02:指定时间关闭/重启系统
[root@xiaoQ ~]# shutdown -h 11:00
Shutdown scheduled for Wed 2021-11-24 11:00:00 CST, use 'shutdown -c' to cancel.
[root@xiaoQ ~]# shutdown -r 11:00
Shutdown scheduled for Wed 2021-11-24 11:00:00 CST, use 'shutdown -c' to cancel.
实践操作-03:实现立即关闭/重启系统
[root@xiaoQ ~]# shutdown -h 0
[root@xiaoQ ~]# shutdown -h now
[root@xiaoQ ~]# shutdown -r 0
[root@xiaoQ ~]# shutdown -r now
实践操作-04:取消关闭/重启系统计划
[root@xiaoQ ~]# shutdown -c
Broadcast message from [email protected] (Wed 2021-11-24 04:18:37 CST):
The system shutdown has been cancelled at Wed 2021-11-24 04:19:37 CST!
说明:以上操作实践过程必须使用系统管理员用户(root)进行操作。
重启或关机命令:halt/poweroff/reboot/systemctl
halt/poweroff/reboot/systemctl
这四个命令同样也具有相应关机或重启功能,可以进行了解。
语法格式:
halt [option]
poweroff [option]
reboot [option]
systemctl [option]
实践操作:
实践操作-01:使用halt命令关机
[root@xiaoQ ~]# halt
实践操作-02:使用poweroff命令关机
[root@xiaoQ ~]# poweroff
实践操作-03:使用reboot命令重启
[root@xiaoQ ~]# reboot
实践操作-04:使用systemctl命令重启/关闭主机
[root@xiaoQ ~]# systemctl poweroff
[root@xiaoQ ~]# systemctl reboot
注销退出系统命令:Linux多用户管理的系统
[root@xiaoQ ~]# logout
[root@xiaoQ ~]# exit
Linxu目录层级结构和windows是有明显区别的,在Linux系统中没用磁盘分区盘符概念,所有数据都是存储在根目录中。
因此/ 根目录就是Linux目录层级的最顶端,从最顶端可以依次向下扩展更多不同层级目录。
目录绝对路径
是从 / 根 开始的路径,例如:/data、/mnt/xiaoQ
应用:使用绝对路径操作更加精准
目录相对路径
不是从 / 根 开始的路径,而是从当前目录或指定的目录开始的,例如,data/,./mnt/xiaoQ
应用:使用相对路径操作更加方便
目录层级结构查看-tree
以树形结构显示目录下的所有内容,包括所有文件、子目录及子目录里的目录和文件
语法格式:
tree [option] [directory]
tree 选项 目录
常用参数:
序号 参数选项 解释说明
01 -a 显示所有文件,包含隐藏文件
02 -d 只显示目录结构中的目录信息
03 -L 遍历目录的最大层数,level为大于0的正整数
04 -F 在执行文件、目录、socket、符号链接、管道名称等不同类型文件的结尾,各自加上相应符号
常见符号信息“*” “/” “=” “@” “|”
操作准备:
检查系统中是否安装了tree命令对应的软件程序包,如果采用的是最小化安装Linux系统的方式,tree命令功能默认没有安装的
需要在系统中进行安装部署:
[root@xiaoQ ~]# rpm -qa tree
tree-1.6.0-10.el7.x86_64
[root@xiaoQ ~]# yum install -y tree
说明:只有在系统中安装好tree软件程序包,系统中才能拥有tree命令,因此tree命令就是比较典型的外置命令
实践操作:
实践操作-01: 不带任何参数获取目录结构数据信息
[root@xiaoQ ~]# tree
.
├── anaconda-ks.cfg
└── Image_001.png
0 directories, 2 files
实践操作-02: 以树形结构显示目录下的所有内容(包含隐藏信息)
[root@xiaoQ ~]# tree -a
.
├── anaconda-ks.cfg
├── .bash_history
├── .bash_logout
├── .bash_profile
├── .bashrc
├── .cshrc
├── Image_001.png
├── .lesshst
└── .tcshrc
0 directories, 9 files
说明:在Linux系统中,名称以点开头的文件都是隐藏文件
实践操作-03: 只列出根目录下第一层的目录结构信息
[root@xiaoQ /]# tree -L 1 /
/
├── bin -> usr/bin
├── boot
├── dev
├── etc
├── home
├── lib -> usr/lib
├── lib64 -> usr/lib64
├── media
├── mnt
├── opt
├── proc
├── root
├── run
├── sbin -> usr/sbin
├── srv
├── sys
├── tmp
├── usr
└── var
19 directories, 0 files
实践操作-04: 只显示目录结构信息中的所有目录信息
[root@xiaoQ /]# tree -d /boot
/boot
├── efi
│ └── EFI
│ └── centos
├── grub
└── grub2
├── fonts
├── i386-pc
└── locale
8 directories
功能说明:
pwd命令是"print working directory"中每个单词的首字母缩写,其功能是显示当前工作目录的绝对路径。
在实际工作中,在命令行操作命令时,经常会在各个目录路径间进行切换,此时可使用pwd命令快速查看当前所在的目录路径。
声明:pwd属于系统内置命令,想获取详细帮助信息请使用help命令
语法格式:
pwd [option]
pwd 选项
实践操作:
实践操作-01: 查看当前操作状态所在路径
[root@xiaoQ ~]# pwd
/root
[root@xiaoQ ~]# cd /etc/init.d
[root@xiaoQ init.d]# pwd
/etc/init.d
[root@xiaoQ init.d]# cd /etc/sysconfig/network-scripts/
[root@xiaoQ network-scripts]# pwd
/etc/sysconfig/network-scripts
功能说明:
cd命令是“change directory”中每个单词的首字母缩写,其功能是从当前工作目录切换到指定的工作目录。
语法格式:
cd [option] [dir]
cd [选项] [目录]
常用参数:
序号 参数选项 解释说明
01 - 若只使用-选项,表示切换目录到当前用户的上一次所在的目录路径
02 ~ 若只使用~选项,表示切换目录到当前用户的家目录所在的目录路径(直接执行cd效果一致)
03 … 若值使用…选项,则将会从当前目录切换到目录的上一级目录所在的路径
实践操作:
实践操作-01:进入系统/usr/local目录
[root@xiaoQ ~]# pwd
/root
[root@xiaoQ ~]# cd /usr/local/ -- 利用绝对路径方式进行切换
[root@xiaoQ local]# pwd
/usr/local
实践操作-02:切换到当前目录的上一级目录
[root@xiaoQ local]# pwd
/usr/local
[root@xiaoQ local]# cd ..
[root@xiaoQ usr]# pwd
/usr
[root@xiaoQ usr]# cd local/ -- 利用相对路径方式进行切换
[root@xiaoQ local]# pwd
/usr/local
实践操作-03:进入当前目录的父目录的父目录中
[root@xiaoQ local]# cd /etc/sysconfig/network-scripts/
[root@xiaoQ network-scripts]# pwd
/etc/sysconfig/network-scripts
[root@xiaoQ network-scripts]# cd ../../
[root@xiaoQ etc]# pwd
/etc
实践操作-04:返回当前用户上一次所在的目录
[root@xiaoQ etc]# cd /usr/local/
[root@xiaoQ local]# cd /etc/sysconfig/network-scripts/
[root@xiaoQ network-scripts]# cd /usr/local/
[root@xiaoQ local]# cd /etc/sysconfig/network-scripts/
[root@xiaoQ network-scripts]# cd -
/usr/local
[root@xiaoQ local]# cd -
/etc/sysconfig/network-scripts
[root@xiaoQ network-scripts]# cd -
/usr/local
实践操作-05:进入当前用户的家目录
[root@xiaoQ ~]# cd /usr/local/
[root@xiaoQ local]# cd ~
[root@xiaoQ ~]# cd /usr/local/
[root@xiaoQ local]# cd
mkdir命令是由“make directories”中每个单词的粗体字母组合而成,其功能是创建目录。
默认情况下,如果要创建的目录已经存在,则会提示文件存在,而不会继续创建目录。
语法格式:
mkdir [option] [directory]
mkdir 选项 目录
说明:mkdir命令可以同时创建多个目录,格式为mkdir dir1 dir2…
常用参数:
序号 参数选项 解释说明
01 -p 01. 递归创建目录,递归的意思是父目录及子目录及子目录…一并创建
02. 即使要创建的目录事先已存在,也不会报错提示目录存在
02 -m 设置新创建目录的默认目录对应的权限(在权限章节说明)
03 -v 显示创建目录的过程
实践操作:
实践操作-01:不使用任何命令参数创建目录的用法示例
[root@xiaoQ ~]# cd ~
[root@xiaoQ ~]# tree -d
.
0 directories
[root@xiaoQ ~]# mkdir data
[root@xiaoQ ~]# tree -d
.
└── data
1 directory
[root@xiaoQ ~]# mkdir data
mkdir: cannot create directory ‘data’: File exists
— 创建的目录已经存在,默认会有错误提示信息
[root@xiaoQ ~]# mkdir -p data
— 可以利用-p忽略错误提示信息
实践操作-02:使用-p参数递归创建目录
[root@xiaoQ ~]# mkdir xiaoQ/xiaoQ01/xiaoQ02
mkdir: cannot create directory ‘xiaoQ/xiaoQ01/xiaoQ02’: No such file or directory
[root@xiaoQ ~]# mkdir -p xiaoQ/xiaoQ01/xiaoQ02
[root@xiaoQ ~]# tree -d
.
├── data
└── xiaoQ
└── xiaoQ01
└── xiaoQ02
4 directories
实践操作-03:加-v参数显示创建目录的过程
[root@xiaoQ ~]# mkdir xiaoQ02
[root@xiaoQ ~]# mkdir -v xiaoQ03
mkdir: created directory ‘xiaoQ03’
[root@xiaoQ ~]# tree -d
.
├── data
├── xiaoQ
│ └── xiaoQ01
│ └── xiaoQ02
├── xiaoQ02
└── xiaoQ03
6 directories
实践操作-04:批量创建目录需求
[root@xiaoQ ~]# mkdir xiQ aoT iaZ
[root@xiaoQ ~]# tree -d
.
├── aoT
├── iaZ
└── xiQ
3 directories
[root@xiaoQ ~]# mkdir xiaoQ{01..03}
[root@xiaoQ ~]# tree -d
.
├── aoT
├── iaZ
├── xiaoQ01
├── xiaoQ02
├── xiaoQ03
└── xiQ
6 directories
rm命令可以理解为英文单词remove的缩写,其功能是删除一个或多个文件或目录。
强调:这是Linux系统里最危险的命令之一,请慎重使用。
语法格式:
rm [option] [file]
rm 选项 文件或目录
常用参数:
序号 参数选项 解释说明
01 -f 强制删除,忽略不存在的文件,不提示确认
02 -i 在删除前需要确认
03 -I 在删除超过三个文件或者递归删除前要求确认
04 -r 递归删除目录及其内容(针对目录删除使用参数)
实践操作:
准备命令操作环境:
[root@xiaoQ ~]# mkdir -p data/{dir01,dir02,dir03}
[root@xiaoQ ~]# tree -d
.
└── data
├── dir01
├── dir02
└── dir03
4 directories
实践操作-01:删除指定目录
[root@xiaoQ ~]# rm data/dir01/
rm: cannot remove ‘data/dir01/’: Is a directory
[root@xiaoQ ~]# rm -r data/dir01/
rm: remove directory ‘data/dir01/’? y
[root@xiaoQ ~]# tree -d
.
└── data
├── dir02
└── dir03
3 directories
实践操作-02:强制删除指定目录
[root@xiaoQ ~]# rm -rf data/dir02
[root@xiaoQ ~]# tree -d
.
└── data
└── dir03
2 directories
mv命令可以理解为英文单词move的缩写,其功能是移动或重命名文件或目录信息。
语法格式:
mv [option] [source] [dest]
mv 选项 源文件 目标文件
mv [option] -t [dest] [source01] [source02] [source03]
mv 选项 目标文件 源文件
常用参数:
序号 参数选项 解释说明
01 -f 若目标文件已经存在,则不会询问而是直接覆盖
02 -i 若目标文件已经存在,则会询问是否覆盖(默认)
03 -n 不覆盖已经存在的文件(安全功能)
04 -t 指定mv的目标目录,适用于移动多个源文件到一个目录的情况
此时目标目录在前,源文件在后
05 -u 在源文件比目标文件新,或者目标文件不存在时才进行移动
实践操作:
准备命令操作环境:
[root@xiaoQ ~]# mkdir -p data01/{dir01,dir02,dir03}
[root@xiaoQ ~]# mkdir -p data02/{dir01,dir02,dir03}
[root@xiaoQ ~]# tree -d
.
├── data01
│ ├── dir01
│ ├── dir02
│ └── dir03
└── data02
├── dir01
├── dir02
└── dir03
8 directories
实践操作-01:对目录名称信息进行改名
[root@xiaoQ ~]# mv data01/dir01/ data01/xiaoQ01
[root@xiaoQ ~]# tree -d
.
├── data01
│ ├── dir02
│ ├── dir03
│ └── xiaoQ01
└── data02
├── dir01
├── dir02
└── dir03
8 directories
[root@xiaoQ ~]# mv data01/dir02 data01/xiaoQ01/
[root@xiaoQ ~]# tree -d
.
├── data01
│ ├── dir03
│ └── xiaoQ01
│ └── dir02
└── data02
├── dir01
├── dir02
└── dir03
8 directories
说明:在重命名目录时,如果修改目录名称已经存在,会将源目录移动到指定名称目录中
实践操作-02:将单个目录进行剪切移动
[root@xiaoQ ~]# mv data01/dir03/ data02/
mv: overwrite ‘data02/dir03’?
[root@xiaoQ ~]# mv -f data01/dir03/ data02/
[root@xiaoQ ~]# tree -d
.
├── data01
│ └── xiaoQ01
│ └── dir02
└── data02
├── dir01
├── dir02
└── dir03
7 directories
[root@xiaoQ ~]# tree -d
.
├── data01
│ └── xiaoQ01
│ └── dir02
└── data02
├── dir01
├── dir02
└── dir03
7 directories
[root@xiaoQ ~]# mv data01/xiaoQ01/ data02/
[root@xiaoQ ~]# tree -d
.
├── data01
└── data02
├── dir01
├── dir02
├── dir03
└── xiaoQ01
└── dir02
7 directories
实践操作-03:将多个目录进行剪切移动
[root@xiaoQ ~]# tree -d
.
├── data01
└── data02
├── dir01
├── dir02
├── dir03
└── xiaoQ01
└── dir02
7 directories
[root@xiaoQ ~]# mv data02/{dir01,dir02} data01
[root@xiaoQ ~]# tree -d
.
├── data01
│ ├── dir01
│ └── dir02
└── data02
├── dir03
└── xiaoQ01
└── dir02
7 directories
[root@xiaoQ ~]# mv -t data01 data02/dir03 data02/xiaoQ01
[root@xiaoQ ~]# tree -d
.
├── data01
│ ├── dir01
│ ├── dir02
│ ├── dir03
│ └── xiaoQ01
│ └── dir02
└── data02
7 directories
touch命令包含两个功能:一个是创建新的空文件;二是改变已有文件的时间戳属性(数据属性知识详细说明)
语法格式:
touch [option] [file]
touch 选项 文件
常用参数:
序号 选项参数
01 -a 只更改指定文件的最后访问时间
02 -d STRING 使用字符串STRING代表时间作为模板设置指定文件的时间属性
03 -m 只更改指定文件的最后修改时间
04 -r file 将指定文件的时间属性设置为与模板文件file的时间属性相同
05 -t STAMP 使用[[CC]YY]MMDDhhmm[.ss]格式的时间设置文件的时间属性。
格式的含义从左到右依次为:世纪、年、月、日、时、分、秒
实践操作:
实践操作-01:创建单个文件信息
[root@xiaoQ ~]# touch file01.txt
[root@xiaoQ ~]# tree
.
└── file01.txt
0 directories, 1 file
[root@xiaoQ ~]# ls
file01.txt
实践操作-02:创建多个文件信息
[root@xiaoQ ~]# touch xiaoQ xiaoZ xiaoC
[root@xiaoQ ~]# ls
file01.txt xiaoC xiaoQ xiaoZ
[root@xiaoQ ~]# touch xiaoQ{01..10}
[root@xiaoQ ~]# ls
file01.txt xiaoQ xiaoQ02 xiaoQ04 xiaoQ06 xiaoQ08 xiaoQ10
xiaoC xiaoQ01 xiaoQ03 xiaoQ05 xiaoQ07 xiaoQ09 xiaoZ
ls命令可以理解为英文单词list的缩写,其功能是列出目录的内容及其内容属性信息(list directory contents)。
该命令有点类似于DOS系统下的dir命令,有趣的是Linux下其实也有dir命令,但企业常用数据信息查看命令是ls。
语法格式:
ls [option] [file]
ls 选项 文件或目录
说明:命令后面的目录或文件信息可以省略,表示查看当前路径下的文件或目录名称信息。
常用参数:
序号 参数选项 解释说明
01 -l 使用长格式列出文件及目录信息 ※
02 -a 显示目录下的所有文件,包含以“.”字符开始的隐藏文件 ※
03 -t 根据最后的修改时间(mtime)进行排序
默认是以文件名进行排序
04 -r 依相反顺序排序
05 -F 在条目后加上文件类型的指示符号(*、/、=、@、|)。
06 -p 只在目录后面加上 /
07 -i 显示inode节点信息
08 -d 当遇到目录时,列出目录本身而非目录内的文件
并且不跟随符号链接 ※
09 -h 以人类可读的信息显示文件或目录的大小,如(1k 234M 2G)
10 -A 列出所有文件,包含隐藏文件,但不包含“.”与“…”这两个目录
11 -S 根据文件大小进行排序
12 -R 递归列出所有子目录
13 -x 逐行列出项目而不是逐栏列出
14 -X 根据扩展名排序
15 -c 根据状态改变时间(ctime)排序
16 -u 根据最后访问时间(atime)排序
17 --color={never,always,auto} 不同的文件类型显示颜色参数
· never表示不显示
· always表示总是显示
· auto表示自动显示
18 --full-time 以完整的时间格式输出
19 --time-style={full-iso,long-iso,locale} 以不同的时间格式输出,long-iso效果最好
20 --time={atime,ctime} 按不同时间属性输出
· atime表示按访问时间
· ctime表示按改变权限属性时间
如果不加此参数则默认为最后修改的时间。
说明:ls命令参数选项过于功能繁杂,建议可以按照知识章节重点,分阶段进行掌握记忆。
实践操作:
准备命令操作环境:
[root@xiaoQ ~]# mkdir test
[root@xiaoQ ~]# cd test
[root@xiaoQ test]# touch file1.txt file2.txt file3.txt
[root@xiaoQ test]# mkdir dir1 dir2 dir3
实践操作-01:直接执行ls命令,不带任何参数信息
[root@xiaoQ test]# ls
dir1 dir2 dir3 file1.txt file2.txt file3.txt
实践操作-02:显示所有文件,特别是要显示隐藏文件
[root@xiaoQ test]# ls -a
. .. dir1 dir2 dir3 file1.txt file2.txt file3.txt .xiaoQ01 .xiaoQ02
实践操作-03:显示系统数据信息详细属性信息
[root@xiaoQ test]# ls -l
total 0
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir2
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir3
-rw-r--r--. 1 root root 0 Nov 24 23:31 file1.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file2.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file3.txt
实践操作-04:显示指定目录名称信息和属性信息
[root@xiaoQ test]# ls -ld dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir1
cat命令可以理解为英文单词concatenate的缩写,其功能是连接多个文件并且打印到屏幕输出。
此命令常用于显示单个文件内容,或者将几个文件内容连接起来一起显示。
语法格式:
cat [option] [file]
cat 选项 文件
常用参数:
序号 参数选项 解释说明
01 -n 从第一行开始对所有输出的内容按行编号
02 -b 与-n选项功能类似,但忽略显示空白行行号
03 -s 当遇到有连续的两行以上的空白行,就替换为一行空白行
04 -E 在每一行的行尾显示$符号
实践操作:
准备命令操作环境:
提前在windows主机中准备好一个测试cat命令功能的文件,并将文件上传到系统中
[root@xiaoQ ~]# cat test-cat.txt
welcome to my Linux class
if you like my class contents,pls support me
bye! boys and girls
实践操作-01:直接执行cat命令查看文件内容,不带任何选项。
[root@xiaoQ ~]# cat test-cat.txt
welcome to my Linux class
if you like my class contents,pls support me
bye! boys and girls
实践操作-02:使用-n、-b、-s选项,并对比三者之间的区别
使用-n参数显示文件行号信息
[root@xiaoQ ~]# cat -n test-cat.txt
1 welcome to my Linux class
2
3 if you like my class contents,pls support me
4
5
6
7 bye! boys and girls
8
使用-b参数显示文件行号信息
[root@xiaoQ ~]# cat -b test-cat.txt
1 welcome to my Linux class
2 if you like my class contents,pls support me
3 bye! boys and girls
使用-s参数显示文件行号信息
[root@xiaoQ ~]# cat -s test-cat.txt
welcome to my Linux class
if you like my class contents,pls support me
bye! boys and girls
实践操作-03:显示文件结尾的$信息
[root@xiaoQ ~]# cat -E test-cat.txt
welcome to my Linux class$
$
if you like my class contents,pls support me$
$
$
$
bye! boys and girls$
$
说明:其实在Linux系统中还有很多命令可以实现文件数据信息的输出,例如 more less head tail grep…
相关命令会在后面Linux云计算课程中进行介绍。
cp命令可以理解为英文单词copy的缩写,其功能为复制文件或目录。
语法格式:
cp [option] [source] [dest]
cp 选项 源文件 目标文件
常用参数:
序号 参数选项 解释说明
格式为 cp -t 目标信息 源信息
实践操作-01:无参数和带参数-p的比较区别
[root@xiaoQ test]# ls -l
total 0
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir2
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir3
-rw-r--r--. 1 root root 0 Nov 24 23:31 file1.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file2.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file3.txt
[root@xiaoQ test]# cp file1.txt file4.txt
[root@xiaoQ test]# cp -p file1.txt file5.txt
[root@xiaoQ test]# ls -l
total 0
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir2
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir3
-rw-r--r--. 1 root root 0 Nov 24 23:31 file1.txt --- 原有文件信息
-rw-r--r--. 1 root root 0 Nov 24 23:31 file2.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file3.txt
-rw-r--r--. 1 root root 0 Nov 25 00:48 file4.txt --- 不加-p文件时间属性信息会发生变化
-rw-r--r--. 1 root root 0 Nov 24 23:31 file5.txt --- 加上-p文件时间属性信息未发生变化
说明:企业生产环境中在备份数据时,一般都会加上-p参数进行备份
实践操作-02:实现将目录信息进行复制
[root@xiaoQ test]# ls -l
total 0
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir2
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir3
-rw-r--r--. 1 root root 0 Nov 24 23:31 file1.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file2.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file3.txt
-rw-r--r--. 1 root root 0 Nov 25 00:48 file4.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file5.txt
[root@xiaoQ test]# cp dir1 dir_bak
cp: omitting directory ‘dir1’
[root@xiaoQ test]# cp -rp dir1 dir_bak
[root@xiaoQ test]# ls -l
total 0
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir2
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir3
drwxr-xr-x. 2 root root 6 Nov 25 00:52 dir_bak
-rw-r--r--. 1 root root 0 Nov 24 23:31 file1.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file2.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file3.txt
-rw-r--r--. 1 root root 0 Nov 25 00:48 file4.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file5.txt
实践操作-03:利用-t参数实现数据备份保存
[root@xiaoQ test]# cp -t dir1/ file1.txt
[root@xiaoQ test]# tree
.
├── dir1
│ └── file1.txt
├── dir2
├── dir3
├── dir_bak
├── file1.txt
├── file2.txt
├── file3.txt
├── file4.txt
└── file5.txt
4 directories, 6 files
mv命令可以理解为英文单词move的缩写,其功能是移动或重命名文件或目录信息。
语法格式:
mv [option] [source] [dest]
mv 选项 源文件 目标文件
mv [option] -t [dest] [source01] [source02] [source03]
mv 选项 目标文件 源文件
常用参数:
序号 参数选项 解释说明
实践操作:
实践操作-01:对文件进行改名操作
[root@xiaoQ test]# mv file1.txt file6.txt
[root@xiaoQ test]# ls -l
total 0
drwxr-xr-x. 2 root root 23 Nov 25 01:09 dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir2
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir3
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir_bak
-rw-r--r--. 1 root root 0 Nov 24 23:31 file2.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file3.txt
-rw-r--r--. 1 root root 0 Nov 25 01:04 file4.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file5.txt
-rw-r--r--. 1 root root 0 Nov 24 23:31 file6.txt
[root@xiaoQ test]# mv file2.txt file6.txt --- 重命名的文件是否和目录中已存在的文件名称产生冲突
mv: overwrite ‘file6.txt’?
实践操作-02:将文件移动到其它目录
[root@xiaoQ test]# mv file6.txt dir1
[root@xiaoQ test]# mv -t dir1 file5.txt
[root@xiaoQ test]# tree
.
├── dir1
│ ├── file1.txt
│ ├── file5.txt
│ └── file6.txt
├── dir2
├── dir3
├── dir_bak
├── file2.txt
├── file3.txt
└── file4.txt
rm命令可以理解为英文单词remove的缩写,其功能是删除一个或多个文件或目录。
强调:这是Linux系统里最危险的命令之一,请慎重使用。
语法格式:
rm [option] [file]
rm 选项 文件或目录
rm -f file 强制删除
常用参数:
序号 参数选项 解释说明
01 -f 强制删除,忽略不存在的文件,不提示确认
02 -i 在删除前需要确认
03 -I 在删除超过三个文件或者递归删除前要求确认
04 -r 递归删除目录及其内容(针对目录删除使用参数)
实践操作:
实践操作-01:将指定文件信息进行删除
[root@xiaoQ test]# rm file2.txt
rm: remove regular empty file ‘file2.txt’?
[root@xiaoQ test]# rm -f file2.txt
[root@xiaoQ test]# ls -l
total 0
drwxr-xr-x. 2 root root 57 Nov 25 01:19 dir1
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir2
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir3
drwxr-xr-x. 2 root root 6 Nov 24 23:31 dir_bak
-rw-r--r--. 1 root root 0 Nov 24 23:31 file3.txt
-rw-r--r--. 1 root root 0 Nov 25 01:04 file4.txt
如有侵权,请联系删除!